我需要在弹出列表中更改ComboBox所选项目的突出显示颜色。我发现有几本教程解释了如何执行此操作,但是它们全部都使用Blend(我没有,也无法获得),或者涉及更改系统默认颜色,这对我来说似乎是很烂。
有人可以指出我需要覆盖的模板,还是告诉我需要设置的属性?
最佳答案
覆盖SystemColors.HighlightBrushKey
(如果需要,还可以覆盖SystemColors.HighlightTextBrushKey
):
<ComboBox>
<ComboBox.Resources>
<SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}">Red</SolidColorBrush>
<SolidColorBrush x:Key="{x:Static SystemColors.HighlightTextBrushKey}">Blue</SolidColorBrush>
</ComboBox.Resources>
<ComboBoxItem>One</ComboBoxItem>
<ComboBoxItem>Two</ComboBoxItem>
</ComboBox>