Cómo: Utilizar desencadenadores para aplicar un estilo a los elementos seleccionados en un control ListView
Actualización: noviembre 2007
En este ejemplo se muestra cómo definir Triggers para un control ListViewItem de modo que, cuando cambia un valor de propiedad de ListViewItem, como respuesta cambie el objeto Style de ListViewItem.
Ejemplo
Si desea que el objeto Style de ListViewItem cambie en respuesta a los cambios de propiedad, defina la propiedad Triggers para el cambio de Style.
En el ejemplo siguiente se define un objeto Trigger que establece la propiedad Foreground en Blue y cambia la propiedad Cursor de manera que muestre el tipo de cursor Hand cuando la propiedad IsMouseOver cambia a 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>
En el ejemplo siguiente se define un MultiTrigger que establece la propiedad Foreground de ListViewItem en Yellow cuando ListViewItem es el elemento seleccionado y tiene el foco de 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>
Para obtener el ejemplo completo, vea Ejemplo ListView with Styled ListViewItems.
Vea también
Conceptos
Información general sobre ListView
Información general sobre GridView