WPF Combobox突出显示在Windows 8中破碎

时间:2012-09-14 18:00:28

标签: c# wpf windows-8

这适用于窗口7上的.net 4.0 / 4.5

<ComboBox HorizontalAlignment="Left"  VerticalAlignment="Top">
            <ComboBox.Resources>
                <SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}">Red</SolidColorBrush>
            </ComboBox.Resources>
            <ComboBox.Items>
                <ComboBoxItem >ITem 1</ComboBoxItem>
                <ComboBoxItem >ITem 1</ComboBoxItem>
                <ComboBoxItem >ITem 1</ComboBoxItem>
                <ComboBoxItem >ITem 1</ComboBoxItem>

            </ComboBox.Items>
        </ComboBox>

但在Windows 8上,我仍然可以获得操作系统的亮点。

任何人都知道解决方案吗?

3 个答案:

答案 0 :(得分:2)

Windows 8主题不使用系统颜色作为前景/背景颜色,因此覆盖它们不再起作用。您现在必须指定一个自定义控件模板。

答案 1 :(得分:0)

我没有Window8,但你可以尝试一下,看看是否有效 -

<SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}">#FFFF0000
</SolidColorBrush>

答案 2 :(得分:0)

在WPF中,这些资源是动态的,取决于操作系统。也许这个Brush在Windows 8中有变化。如果是这种情况,那么你应该实现画笔。希望这个答案对你有所帮助......