您好,我正在使用 WPF DataGrid,并且我正在尝试使 ComboBox Column 正常工作。
<tk:DataGridComboBoxColumn Header="GroupLevel"
DisplayMemberPath="Type"
SelectedItemBinding="{Binding Path=GroupLevel}"
>
<tk:DataGridComboBoxColumn.EditingElementStyle>
<Style TargetType="ComboBox">
<Setter Property="ItemsSource" Value="{Binding Path=GroupLevel.Group.GroupLevels}" />
</Style>
</tk:DataGridComboBoxColumn.EditingElementStyle>
</tk:DataGridComboBoxColumn>
当我查看网格时,该列是空白的,就像它没有使用显示成员路径一样。但是,一旦我单击该列,组合框就会出现,并显示 ItemsSource 中的所有项目并选择正确的项目,因此我知道绑定都正常工作,甚至 DisplayMemberPath 也是如此。只是当我不编辑单元格时它显示为空白。
我是否错过了某个地方的房产?
谢谢,
劳尔
我非常确定这是因为当您不处于编辑模式时,您的列没有项目源,并且组合框不能在没有项目源的情况下选择项目。一旦您进入编辑模式,您的专栏就会获得其项目源,一切都很酷。您可以通过指定项目源来解决此问题,如下所示:-
<tk:DataGridComboBoxColumn.ElementStyle>
<Style TargetType="ComboBox">
<Setter Property="ItemsSource" Value="{Binding Path=GroupLevel.Group.GroupLevels}" />
</Style>
</tk:DataGridComboBoxColumn.ElementStyle>
那么您的编辑元素和(非编辑)元素都具有相同的 ItemsSource
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)