我已经描述了绑定 RibbonComboBox 的 SelectedItem 的问题。尝试设置此控件的样式时会出现另一个非常难看的问题。
从上面提到的帖子中的无样式 ComboBox 开始:
<r:RibbonComboBox >
<r:RibbonGallery SelectedItem="{Binding SelectedItem, Mode=TwoWay}">
<r:RibbonGalleryCategory ItemsSource="{Binding Controls}" DisplayMemberPath="Caption" />
</r:RibbonGallery>
</r:RibbonComboBox>
我得到了预期的结果:
但是在 Microsoft Blend(VS 2012 预览版)的帮助下应用样式时,Object | 编辑样式 | 编辑副本...(仅复制模板,使用 Blend 或 Visual Studio,具有相同的效果):
所选项目将不再正确显示 - 而不是 DisplayMemberPath 属性,而是显示类型名称。下拉列表中的项目仍然正确。请注意,我还没有以任何方式更改样式,它是提取的默认样式/模板会产生此问题。
<r:RibbonComboBox Style="{DynamicResource RibbonComboBoxStyle1}" >
我在设置下拉项的样式时也遇到了麻烦(主要是想更改鼠标悬停背景角半径),因为 RibbonComboBox 的 ItemContainerStyle 将具有目标类型 RibbonMenuItem,并且似乎对实际的 RibbonGalleryItems 没有影响。
- 如何修复 RibbonComboBox 样式?
- 如何通过 Blend/VS 获得 RibbonGalleryItem 样式?