Partekatu honen bidez:


Cómo: Usar desencadenadores para aplicar estilo a los elementos seleccionados en un ListView

En este ejemplo se muestra cómo definir Triggers para un elemento de control ListViewItem de modo que cuando el valor de propiedad de un ListViewItem cambie, el Style del ListViewItem se modifique como respuesta.

Ejemplo

Si desea que el Style de la ListViewItem cambie en respuesta a los cambios de propiedad, defina Triggers para el cambio del Style.

En el siguiente ejemplo, se define un Trigger que configura la propiedad Foreground a Blue y modifica el Cursor para mostrar un 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 siguiente ejemplo se define un MultiTrigger que establece la propiedad Foreground de un ListViewItem en Yellow cuando el ListViewItem es el elemento seleccionado y tiene el foco del 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>

Consulte también