【问题标题】:ComboBox in DataTemplate, items not highlighted on MouseOverDataTemplate 中的 ComboBox,MouseOver 上未突出显示的项目
【发布时间】:2013-03-16 14:50:21
【问题描述】:

这是我的问题: 我有一个绑定到列表的 ListBox,其中 ItemTemplate 是一个包含 ComboBox 的 DataTemplate,因此,对于列表中的每个项目,我都可以显示不同的组合框。

一切正常,除了组合框中的项目没有突出显示。当我放下组合框时,我会看到所有项目,当我单击其中一个项目时,它会在组合框中被选中,但是当鼠标悬停在其中一个项目上时,它仍然是“白色”,它不会像突出显示的那样变暗。我不明白为什么。

【问题讨论】:

    标签: .net wpf combobox datatemplate highlight


    【解决方案1】:

    您是否编辑了默认样式?您可以尝试从MSDN 获取 ComboBox ControlTemplate 示例,并根据您的需要进行相应更改。另一个编辑样式的好工具是 Expression Blend

    【讨论】:

    • 我有同样的问题,我尝试了这个解决方案。首先,该模板不是默认的组合框 - 它看起来不同。我在 DataTemplate 的内部和外部都应用了它。在内部,鼠标悬停在选项上时仍然无法突出显示。在外面,它突出显示得很好。所以这似乎不是解决方案。我正在使用 .net 3.5。
    【解决方案2】:

    我已经解决了!将此添加到您的组合框中:

    <ComboBox.Resources>
        <SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}">#3399FF</SolidColorBrush>
        <SolidColorBrush x:Key="{x:Static SystemColors.HighlightTextBrushKey}">White</SolidColorBrush>
    </ComboBox.Resources>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-03-14
      • 2013-07-11
      • 2012-01-20
      • 1970-01-01
      • 2011-04-19
      • 1970-01-01
      • 1970-01-01
      • 2018-08-25
      相关资源
      最近更新 更多