我正在尝试使用DataGrid
,其第一列是ComboxBox
。此ComboxBox
具有硬编码的静态值,可能的值为:Employee, Contractor, Supplier
如何在DataGrid
中显示一些静态值而不绑定到DataSource
。
我是WPF的新手,所以更详细的解释会有所帮助。
答案 0 :(得分:13)
如果你的意思是wpf工具包datagrid,你可以这样做:
<dg:DataGridComboBoxColumn
Header="String Column"
SelectedItemBinding="{Binding Path=RoleProperty}">
<dg:DataGridComboBoxColumn.ItemsSource>
<CompositeCollection>
<system:String>Employee</system:String>
<system:String>Contractor</system:String>
<system:String>Supplier</system:String>
</CompositeCollection>
</dg:DataGridComboBoxColumn.ItemsSource>
</dg:DataGridComboBoxColumn>
在此显示的项目中有一个名为RoleProperty的属性。您还需要在xaml顶部使用xnl命名空间定义(其余部分如下:
xmlns:system="clr-namespace:System;assembly=mscorlib"
让您包含系统命名空间。 (访问字符串)
答案 1 :(得分:3)
您可以将标准ComboBox与静态值一起使用为ComboBoxItems,如下所示:
<ComboBox>
<ComboBoxItem>Employee</ComboBoxItem>
<ComboBoxItem>Contractor</ComboBoxItem>
<ComboBoxItem>Supplier</ComboBoxItem>
</ComboBox>