WPF комбинированные цвета - PullRequest
0 голосов
/ 05 марта 2010

Я изменяю внешний вид всех ComboBox в моем приложении, добавляя Style в App.xaml:

    <Style TargetType="ComboBox">
        <Setter Property="Foreground" Value="White"/>
        <Setter Property="Background" Value="#303030"/>
        <Setter Property="BorderBrush" Value="#000000"/>
    </Style>

Есть два цвета, которые мне не удалось установить:

1) цвет Background при IsEnabled=false

2) цвет выделения Background, когда мышь находится над ComboBox.

Как я могу изменить эти два цвета?

[править: похоже, что цвет подсветки не совпадает с цветом мыши над цветом, потому что, когда я перемещаю мышь над ComboBox, она ненадолго перевернет цвет, который я определил как мышь над цветом, а затем повернет в другой цвет (светло-голубой)]

1 Ответ

2 голосов
/ 05 марта 2010

Вы хотите проверить триггеры стиля.Также необходимо переопределить ItemContainerStyle, чтобы избавиться от синего цвета выделения по умолчанию

<Style.Triggers>
  <Trigger Property="IsMouseOver" Value="true">
    <Setter Property="Background" Value="SomeColor" />
  </Trigger>
  <Trigger Property="IsEnabled" Value="false">
    <Setter Property="Background" Value="SomeOtherColor" />
  </Trigger>
</Style.Triggers>
...