Ho una serie di pulsanti a cui voglio applicare un’immagine, tramite stile, che deve presentarsi in modo differente secondo che il pulsante sia abilitato o disabilitato (comportamento non automatico in WPF).
Passi:
1. Ho creato un ResourceDictionary che contenga lo stile per tutta l’applicazione:
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<!-- IMMAGINE PULSANTE -->
<Style x:Key="ImmaginePulsante" TargetType="Image">
<Style.Triggers>
<!-- opacità dipendente dall'abilitazione del pulsante -->
<DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType={x:Type Button}, AncestorLevel=1}, Path=IsEnabled}" Value="False">
<Setter Property="Opacity" Value="0.20"></Setter>
</DataTrigger>
</Style.Triggers>
</Style>
<!-- -->
<!-- NAVIGATORE ============================================= -->
<!-- pulsanti -->
<Style x:Key="PulsanteNavigatore" TargetType="Button">
<Setter Property="Margin" Value="1"></Setter>
<Setter Property="Height" Value="Auto"></Setter>
<Setter Property="Width" Value="Auto"></Setter>
</Style>
<!-- immagini dei...