Mam taki styl dla radiobuttonu, kod jest dłuższy ale mam problem jedynie z triggerem na IsChecked.
<Style x:Key="ButtonStyle1" TargetType="RadioButton" BasedOn="{StaticResource {x:Type ToggleButton}}">
<Style.Triggers>
<Trigger Property="IsChecked" Value="true">
<Setter Property="Foreground">
<Setter.Value>
<SolidColorBrush Color="Green"/>
</Setter.Value>
</Setter>
<Setter Property="Background">
<Setter.Value>
<SolidColorBrush Color="Orange"/>
</Setter.Value>
</Setter>
</Trigger>
</Style.Triggers>
</Style>
Po wciśnięciu buttona foreground jest zielony ale background jest domyślny, nie zmienia mi go. Ktoś może mi powiedzieć dlaczego?
A jak dodam jeszcze coś takiego:
<Trigger Property="IsMouseOver" Value="true">
<Setter Property="Control.Background">
<Setter.Value>
<SolidColorBrush Color="Orange"/>
</Setter.Value>
</Setter>
</Trigger>
To zmienia bacground na ułamek sekundy i przechodzi w domyślny.
Ok nieważne, trzeba użyć ControlTemplate
http://stackoverflow.com/questions/12394101/changing-background-color-of-togglebutton-when-checked