【发布时间】:2015-03-13 09:36:36
【问题描述】:
我有一个ComboBox,一些硬编码的ComboBoxItems,我试图显示该项目的Content 包含的任何内容。
<ComboBox SelectedIndex="0"
SelectedValuePath="Tag"
DisplayMemberPath="{Binding Content}">
<ComboBoxItem Content="Item1" />
<ComboBoxItem Content="Item2" Tag="sometag1" />
<ComboBoxItem Content="Item3" Tag="sometag2" />
<ComboBoxItem Content="Item4" Tag="sometag3" />
</ComboBox>
我正在努力设置DisplayMemberPath。目前,我将其设置为{Binding Content}。如果我将上面的代码插入到空白 WPF 项目中,Content 会正确显示,如下所示。
然后我将完全相同的代码复制到另一个更大的项目中,选择第一项并没有显示任何内容:
我不明白这怎么可能。 Combobox 代码应该完全独立于项目的其他部分。只应用了主题,视觉效果不同。
DisplayMemberPath 有什么地方做错了吗?或者有什么可以解释的?
【问题讨论】:
-
您是否尝试过删除 SelectedValuePath="Tag" DisplayMemberPath="{Binding Content}" 然后检查?
-
DisplayMemberPath="Content"?还要检查输出窗口以查看是否有与此代码相关的任何绑定错误消息... -
@user2143213 为什么需要
DisplayMemberPath?无论如何它都会显示Content。 -
删除 DisplayMemberPath 没有帮助。也不会删除 SelectedValuePath。我还发现这个问题与应用主题有关。如果未应用主题,一切正常。
-
我希望它不是因为这个黑色组合的某种风格?