Comment : utiliser des déclencheurs pour appliquer un style aux éléments sélectionnés d'un ListView
Mise à jour : novembre 2007
Cet exemple montre comment définir des Triggers pour un contrôle ListViewItem afin que lorsqu'une valeur de propriété d'un ListViewItem change, le Style du ListViewItem change également.
Exemple
Si vous souhaitez que le Style d'un ListViewItem change conformément aux modifications de propriété, définissez des Triggers pour la modification du Style.
L'exemple suivant définit un Trigger qui affecte Blue à la propriété Foreground et change le Cursor pour afficher un Hand lorsque la propriété IsMouseOver devient true.
<Style x:Key="MyContainer" TargetType="{x:Type ListViewItem}">
<Setter Property="Margin" Value="0,1,0,0"/>
<Setter Property="Height" Value="21"/>
<Style.Triggers>
...
<Trigger Property="IsMouseOver" Value="true">
<Setter Property="Foreground" Value="Blue" />
<Setter Property="Cursor" Value="Hand"/>
</Trigger>
...
</Style.Triggers>
</Style>
L'exemple suivant définit un MultiTrigger qui affecte Yellow à la propriété Foreground d'un ListViewItem lorsque le ListViewItem est l'élément sélectionné et a le focus clavier.
<Style x:Key="MyContainer" TargetType="{x:Type ListViewItem}">
<Setter Property="Margin" Value="0,1,0,0"/>
<Setter Property="Height" Value="21"/>
<Style.Triggers>
...
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsSelected" Value="true" />
<Condition Property="Selector.IsSelectionActive" Value="true" />
</MultiTrigger.Conditions>
<Setter Property="Foreground" Value="Yellow" />
</MultiTrigger>
...
</Style.Triggers>
</Style>
Pour l'exemple complet, consultez ListView avec des ListViewItems mis en forme avec des styles, exemple.