首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WPF DataGridComboBoxColumn

WPF DataGridComboBoxColumn
EN

Stack Overflow用户
提问于 2009-12-15 03:50:27
回答 1查看 9.5K关注 0票数 5

您好,我使用的是WPF DataGrid,我正在尝试让ComboBox列正常工作。

代码语言:javascript
复制
<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也是如此。只是当我不编辑单元格时,它才会显示为空白。

我错过了什么地方的房产吗?

谢谢,劳尔

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-12-15 08:42:36

我非常确定这是因为当您不在编辑模式时,您的列没有项目源,并且ComboBox不能有没有项目源的所选项目。一旦你进入编辑模式,你的专栏就会得到它的项目源代码,一切都很酷。您可以通过指定项目源来修复此问题,如下所示:

代码语言:javascript
复制
<tk:DataGridComboBoxColumn.ElementStyle>
    <Style TargetType="ComboBox">
        <Setter Property="ItemsSource" Value="{Binding Path=GroupLevel.Group.GroupLevels}" />
    </Style>
</tk:DataGridComboBoxColumn.ElementStyle>

则编辑元素和(非编辑)元素都具有相同的ItemsSource

票数 15
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1903057

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档