Я пытаюсь сделать цвет фона кнопки переключения прозрачным, если isChecked = true или false и если мышь находится над элементом управления. Так сказать, при любых обстоятельствах.
Это то, что я пытался в последний раз:
<ToggleButton DockPanel.Dock="Right" Width="48" IsChecked="{Binding DownloadImages}">
<ToggleButton.Style>
<Style TargetType="{x:Type ToggleButton}">
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="Background" Value="Aqua"/>
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="true">
<Setter Property="Background" Value="Red"/>
</Trigger>
<DataTrigger Binding="{Binding DownloadImages}" Value="True">
<Setter Property="Background" Value="Green"/>
<Setter Property="Content">
<Setter.Value>
<Image Style="{StaticResource ToggleOnImage}" />
</Setter.Value>
</Setter>
</DataTrigger>
<DataTrigger Binding="{Binding DownloadImages}" Value="False">
<Setter Property="Background" Value="Blue"/>
<Setter Property="Content">
<Setter.Value>
<Image Style="{StaticResource ToggleOffImage}" />
</Setter.Value>
</Setter>
</DataTrigger>
</Style.Triggers>
</Style>
</ToggleButton.Style>
К сожалению, это дает следующий результат:
Это показывает, что работает только установщик синего фона. Изображения меняются правильно, только фон состояния «Вкл.» И MouseOver остается темным windows в стиле синего цвета.
Вы понимаете, что я делаю неправильно?