C# DataGrid中的WPF组合框动态绑定到DataTable
我正在用VB.net处理一个WPF项目,对于一个特定的部分,我需要显示一个可编辑的MySQL表(至少有一些字段是可编辑的) 现在我通过将MySQL数据库中的数据加载到DataTable中实现了这一点,DataGrid从中提取其所有值。此DataGrid中的一列是具有4个默认选项的组合框,但我无法使此组合框中的选定值链接到datatable(通过将绑定设置为datatable中的列的名称,其他字段工作正常)。' 这是组合框的当前XAML代码C# DataGrid中的WPF组合框动态绑定到DataTable,c#,wpf,vb.net,combobox,C#,Wpf,Vb.net,Combobox,我正在用VB.net处理一个WPF项目,对于一个特定的部分,我需要显示一个可编辑的MySQL表(至少有一些字段是可编辑的) 现在我通过将MySQL数据库中的数据加载到DataTable中实现了这一点,DataGrid从中提取其所有值。此DataGrid中的一列是具有4个默认选项的组合框,但我无法使此组合框中的选定值链接到datatable(通过将绑定设置为datatable中的列的名称,其他字段工作正常)。' 这是组合框的当前XAML代码 <DataGridTemplateColumn H
<DataGridTemplateColumn Header="Status" CellStyle="{StaticResource DataGridComboBox}">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ComboBox Margin="2" SelectedValue="{Binding XPath=item_status}">
<ComboBoxItem Name="not_approved">Not Approved</ComboBoxItem>
<ComboBoxItem Name="on_hold">On Hold</ComboBoxItem>
<ComboBoxItem Name="approved">Approved</ComboBoxItem>
<ComboBoxItem Name="ad_hoc">Ad Hoc</ComboBoxItem>
</ComboBox>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
未批准
暂停
经核准的
临时的
我试图通过设置SelectedValue将数据网格中的值绑定到组合框,但这不起作用
如果查看屏幕截图,可以在第二列(状态)中看到组合框。如前所述,所有其他字段直接来自DataTable。在DataTable中,此列中第一行的值未被批准,现在我手动选择了它,但通常情况下这会自动加载。您可以使用
DataGridComboxColumn
并将ItemsSource属性设置为字符串集合(“未批准”、“保留”等)谢谢,但是,如何使用VB.net以编程方式设置ItemsSource?我不建议在代码隐藏中构造视图。您应该像上面那样在xaml中声明一个
,然后为该列设置ItemsSource
属性