DataGridComboBoxColumn不显示值列表
本文关键字:列表 显示 DataGridComboBoxColumn | 更新日期: 2023-09-27 18:18:21
我想填充一个DataGridComboBoxColumn在DataGrid
与状态值从字符串列表
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;
网格数据是一个类的对象列表。问题是网格数据状态列的值默认情况下是空白的(它不显示已经保存的值)。当我单击单元格时,组合显示值,但当我选择任何值时,它也不显示。
我希望我的解释足够清楚。
要使数据绑定工作,必须将XAML项绑定到类的公共属性。在您给出的代码示例中,似乎您正在尝试绑定到一个局部变量。
我建议你考虑使用ObservableCollection类型,并在你的类中实现INotifyPropertyChanged接口,这样对代码中所做的列表的更改将自动在视图上更新。