我正在尝试设置WPF ComboBox的样式,使其与我们下一个项目正在考虑的黑色主题相匹配。
我的问题是,如果ComboBox的背景为黑色,则按钮不显示(因为它也是黑色)。
出于某种原因,我无法找到有关如何更改颜色的任何信息。
以下XAML是我目前用黑色设计ComboBox的方式:
<ComboBox Name="myComboBox" VerticalAlignment="Top" Width="120" HorizontalAlignment="Right">
<ComboBox.Resources>
<LinearGradientBrush x:Key="{x:Static SystemColors.HighlightBrushKey}" StartPoint="0,0" EndPoint="0,1">
<GradientStop Color="#FFCBCBCB" Offset="0.0"/>
<GradientStop Color="#FF7C7C7C" Offset="0.3"/>
<GradientStop Color="black" Offset="1"></GradientStop>
</LinearGradientBrush>
</ComboBox.Resources>
<ComboBox.Background>
<LinearGradientBrush StartPoint="0,0" EndPoint="0,0.5">
<GradientStop Color="white" Offset="0"/>
<GradientStop Color="black" Offset="1"/>
</LinearGradientBrush>
</ComboBox.Background>
<ComboBoxItem Name="cbi1">Item1</ComboBoxItem>
<ComboBoxItem Name="cbi2">Item2</ComboBoxItem>
<ComboBoxItem Name="cbi3">Item3</ComboBoxItem>
</ComboBox>
非常感谢有关该主题的任何帮助。
谢谢,
-Frinny
答案 0 :(得分:2)
您将不得不修改ComboBox的ControlTemplate。
控制本身令人惊讶地首先 - 但不是 - 当你想到它复杂时。我建议进入Blend(如果你有的话)并提取ControlTemplate。否则,您可以使用XAMLWriter获取ComboBox的XAML。
这unfortunately named page(我不认为这真的是“孩子的东西”,你呢?)有一个做这两件事的例子。