C# DataGridComboxColumn不显示值列表
我想用字符串列表中的状态值填充C# DataGridComboxColumn不显示值列表,c#,wpf,binding,wpfdatagrid,datagridcomboboxcolumn,C#,Wpf,Binding,Wpfdatagrid,Datagridcomboboxcolumn,我想用字符串列表中的状态值填充DataGrid中的datagridcomboxcolumn XAML看起来像这样 <DataGridComboBoxColumn Header="Status" > <DataGridComboBoxColumn.ElementStyle> <Style TargetType="ComboBox"> <Setter Property="ItemsSource" Value="{Binding}" /
DataGrid
中的datagridcomboxcolumn
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;
var lstStrings=new List();
添加(“新”);
添加(“打开”);
添加(“重新打开”);
添加(“已关闭”);
DataGridComboxColumn cmbx=grdComments.Columns[1]作为DataGridComboxColumn;
cmbx.ItemsSource=lstStrings;
网格数据是一个类的对象列表。问题在于默认情况下,“栅格数据状态”列的值为空(它不显示已保存的值)。当我单击单元格时,该组合将显示值,但当我选择任何值时,它也不会显示
我希望我的解释足够清楚。要使数据绑定起作用,XAML项必须绑定到类的公共属性。 在您给出的代码示例中,似乎您正在尝试绑定到局部变量
我建议您考虑使用ObservableCollection类型,并在类中实现INotifyPropertyChanged接口,这样,对代码列表的更改将在视图中自动更新。可能的问题:该示例中没有代码,因此我无法仅通过xamlIt连接点。如果看不到更多代码,很难判断,但我猜您的
MyClass.Status
不是字符串,或者绑定不正确。组合框在什么时候绑定到您的数据项?我在XAML的任何地方都看不到它。你在哪里填呢?它的项目来源?我很困惑,因为您有一个ItemsSource
的绑定,看起来您是在code-behind中设置的cmbx
是ComboBoxColumn,当加载窗口时,我在那里设置列表
。我还更新了代码。我正在填充的列表将只填充一次。我需要为一些静态值创建一个类吗?除了组合值显示在组合中之外,唯一的问题是选择