Procedura: utilizzare i trigger per applicare uno stile agli elementi selezionati in un controllo ListView
In questo esempio viene illustrato come definire la proprietà Triggers per un controllo ListViewItem in modo tale che quando viene modificato un valore di proprietà di un oggetto ListViewItem, la classe Style del controllo ListViewItem venga modificata di conseguenza.
Esempio
Se si desidera che la classe Style di un oggetto ListViewItem venga modificata in base alle modifiche della proprietà, definire la proprietà Triggers per la modifica dell'oggetto Style.
Nell'esempio riportato di seguito viene definita una classe Trigger che imposta la proprietà Foreground su Blue e modifica la proprietà Cursor per visualizzare il tipo di cursore Hand quando la proprietà IsMouseOver diventa 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>
Nell'esempio riportato di seguito viene definita una classe MultiTrigger che imposta la proprietà Foreground di un oggetto ListViewItem su Yellow quando il controllo ListViewItem è l'elemento selezionato con lo stato attivo.
<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>
Vedere anche
Riferimenti
Concetti
Panoramica sul controllo ListView