[英]WPF ComboBox in DataGrid bound dynamically to DataTable
我正在使用VB.net进行WPF项目,对于某个特定的部分,我需要显示(可编辑的)MySQL表(的一部分)(至少某些字段是可编辑的)。
现在,我通过将MySQL数据库中的数据加载到DataTable中来工作,DataGrid从中提取所有值。 该DataGrid的其中一列是具有4个默认选项的组合框,但是我无法正常工作,因为此组合框中的所选值已链接到数据表(通过将绑定设置为数据表中的“列”)。
这是ComboBox的当前XAML代码。
<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。 在数据表中,此列第一行的值未批准,现在我手动选择了它,但通常应自动加载。
您可以使用DataGridComboBoxColumn
并将ItemsSource属性设置为字符串的集合(“未批准”,“保留”等)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.