Como: Usar acionadores para estilizar itens selecionados em um ListView
Este exemplo mostra como definir Triggers para um controle ListViewItem de modo que quando um valor de propriedade de um ListViewItem é alterado, o Style do ListViewItem é alterado em resposta.
Exemplo
Se você desejar que o Style de um ListViewItem seja alterado em resposta a alterações de propriedades, defina Triggers para as alterações de Style.
O exemplo a seguir define um Trigger que define a propriedade Foreground como Blue e altera o Cursor para exibir uma Hand quando a propriedade IsMouseOver muda para 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>
O exemplo a seguir define um MultiTrigger que define a propriedade Foreground de um ListViewItem como Yellow quando o ListViewItem é o item selecionado e tem o foco do teclado.
<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>
For the complete sample, see ListView com o exemplo de ListViewItems estilizado.