我需要更改ComboBox的选择项的高亮颜色,在弹出的列表中。我发现几个教程解释如何做到这一点,但他们都要么使用混合,而我没有,并且不能获得,或涉及更改系统默认的颜色 - 这似乎是一个黑客攻击我。设置ComboBox中选定的项目高亮颜色
有人能指出我需要重写,或者告诉我,我需要设置该属性模板?
我需要更改ComboBox的选择项的高亮颜色,在弹出的列表中。我发现几个教程解释如何做到这一点,但他们都要么使用混合,而我没有,并且不能获得,或涉及更改系统默认的颜色 - 这似乎是一个黑客攻击我。设置ComboBox中选定的项目高亮颜色
有人能指出我需要重写,或者告诉我,我需要设置该属性模板?
覆盖的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>
我已经创建了一个组合框模板的位置:
http://wpfstyles.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=31388#DownloadId=78720
感谢, 维卡斯
你如何得到或知道“面板”在
@JaysonRagasa,我知道这是现在真的老了,但如果你或者其他读者从来没有发现,你可以访问在Visual Studio中的默认WPF控件模板:如何提取默认控件模板在Visual Studio?(HTTPS ://stackoverflow.com/questions/8825030/how-to-extract-default-control-template-in-visual-studio)。 – Sheridan 2017-12-18 09:12:55
再次,没有办法做到这一点,不涉及改变系统颜色? – Klay 2009-08-14 15:56:35
我一直在查找对SelectionBoxItemTemplate的引用。这是什么控制弹出窗口中突出显示的项目? – Klay 2009-08-14 15:59:33
你并没有改变系统颜色 - 你只是在ComboBox的范围内覆盖它们。 – 2009-08-14 19:32:16