我想在DataGrid
中填充一个DataGridComboBoxColumn,其中包含来自字符串列表的状态值。DataGridComboBoxColumn不显示值列表
的XAML看起来像这样
<DataGridComboBoxColumn Header="Status" >
<DataGridComboBoxColumn.ElementStyle>
<Style TargetType="ComboBox">
<Setter Property="ItemsSource" Value="{Binding}" />
</Style>
</DataGridComboBoxColumn.ElementStyle>
</DataGridComboBoxColumn>
的字符串的代码是一个简单的泛型列表
var lstStrings = new List<string>();
lstStrings.Add("New");
lstStrings.Add("Open");
lstStrings.Add("ReOpen");
lstStrings.Add("Closed");
DataGridComboBoxColumn cmbx = grdComments.Columns[1] as DataGridComboBoxColumn;
cmbx.ItemsSource = lstStrings;
格栅数据是一类对象的列表。问题在于网格数据状态列值默认为空白(它不显示已保存的值)。当我点击单元格的组合显示的值,但是当我选择任何值时它也没有显示。
我希望我的解释清楚。
可能dublicate的这个问题:http://stackoverflow.com/q/8346869/920384 – punker76 2011-12-19 11:55:07
这个例子中没有代码,所以我无法通过只有xaml连接点 – CodeMe 2011-12-19 12:19:37
很难说,没有看到更多的代码,但我猜测你的'MyClass.Status'不是一个字符串,或者绑定不正确。 ComboBox在什么时候绑定到你的DataItem?我没有在XAML的任何地方看到它。你在哪里填充它的ItemsSource?我很困惑,因为你有一个'ItemsSource'的绑定,并且它看起来像是在代码隐藏中设置 – Rachel 2011-12-19 13:59:39