我需要在ComboBox WPF中更改颜色,为此我尝试覆盖模板。 但是如果我这样做
<ComboBox.Template>
<ControlTemplate>
<Themes:SystemDropShadowChrome Color="Red"/>
</ControlTemplate>
</ComboBox.Template>
它只是变成了一个无用的红色立方体,ComboBox的所有其他属性都丢失了,那么如何覆盖模板以更改颜色并保存ComboBox的属性呢?
答案 0 :(得分:0)
您尝试过吗?
<Setter Property="OverridesDefaultStyle" Value="true" />
答案 1 :(得分:0)
您需要提供一个新模板,而不仅仅是一行。
在此处查看模板:
https://docs.microsoft.com/en-us/dotnet/framework/wpf/controls/combobox-styles-and-templates
答案 2 :(得分:0)
根据Microsoft的UG
没有办法只替换控件的可视树的一部分;要更改控件的可视树,必须将控件的Template属性设置为其新的完整的ControlTemplate。
您需要描述控件的整个模板。以下是获取控件的完整默认模板的方法:How to Extract Default Control Template In Visual Studio?