XAML ComboBox悬停效果

时间:2011-11-01 08:47:03

标签: c# xaml coding-style combobox

enter image description here

XAML ComboBox看起来像上面的图像,当你将鼠标悬停在它上面时,它会获得如第二张图片中所示的蓝色高亮效果。我已经尝试了一切我能想到的去除这种效果,包括这些....

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

......但似乎没有任何效果。通常情况下我并不介意,只是坚持下去,但由于我目前正在开发的应用程序的配色方案,它看起来非常不合适。

感谢您的帮助

1 个答案:

答案 0 :(得分:2)

您需要为ComboBox定义自定义样式/模板。你有一个例子here。您必须修改(或删除)此触发器:

<ControlTemplate TargetType="ToggleButton" x:Key="ComboBoxToggleButtonTemplate">
  ... ...
   <ControlTemplate.Triggers>
      <Trigger Property="UIElement.IsMouseOver" Value="True">
         <Setter Property="Panel.Background" TargetName="Border" Value="{StaticResource HighlightBackgroundBrush}"/>
      </Trigger>
           ... ...
   </ControlTemplate.Triggers>
</ControlTemplate>