ListView con color Alternativo

Una de las respuestas que he dado en los foros de MSDN es como crear un estilo para el control ListView que generase controles alternativos en cada fila, imitando los estilos de los grid antiguos. A mi no es algo que me guste especialmente pero aquí va la solución

 

  1. <Window.Resources>
  2.         <Style x:Key=»alternatingListViewItemStyle» TargetType=»{x:Type ListViewItem}»>
  3.             <Style.Triggers>
  4.               
  5.                 <Trigger Property=»ItemsControl.AlternationIndex» Value=»1″>
  6.                     <Setter Property=»Background» Value=»LightGray»></Setter>
  7.                 </Trigger>
  8.                 <Trigger Property=»ItemsControl.AlternationIndex» Value=»2″>
  9.                     <Setter Property=»Background» Value=»White»></Setter>
  10.                 </Trigger>
  11.             </Style.Triggers>
  12.           
  13.             <Setter Property=»Height» Value=»30″ />
  14.         </Style>
  15.     </Window.Resources>

Como podéis observar en el estilo se basa en Triggers y en la propiedad AlternationIndex

Ahora para utilizarla

  1. <ListView Name=»listTest» ItemContainerStyle=»{StaticResource alternatingListViewItemStyle AlternationCount=»2″ >
  2.             <ListView.View>
  3.                 <GridView>
  4.                     <GridViewColumn Header=»Nombre» />
  5.                     <GridViewColumn Header=»Apellido» />
  6.                     <GridViewColumn Header=»Dirección» />
  7.                 </GridView>
  8.             </ListView.View>
  9.             <!– Whatever you might have in here –>
  10.         </ListView>

Debéis fijaros que además de asignar el estilo debemos de poner la propiedad AlternationCount a 2 y ya esta

Un comentario sobre “ListView con color Alternativo”

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *