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
- <Window.Resources>
- <Style x:Key=»alternatingListViewItemStyle» TargetType=»{x:Type ListViewItem}»>
- <Style.Triggers>
- <Trigger Property=»ItemsControl.AlternationIndex» Value=»1″>
- <Setter Property=»Background» Value=»LightGray»></Setter>
- </Trigger>
- <Trigger Property=»ItemsControl.AlternationIndex» Value=»2″>
- <Setter Property=»Background» Value=»White»></Setter>
- </Trigger>
- </Style.Triggers>
- <Setter Property=»Height» Value=»30″ />
- </Style>
- </Window.Resources>
Como podéis observar en el estilo se basa en Triggers y en la propiedad AlternationIndex
Ahora para utilizarla
- <ListView Name=»listTest» ItemContainerStyle=»{StaticResource alternatingListViewItemStyle}» AlternationCount=»2″ >
- <ListView.View>
- <GridView>
- <GridViewColumn Header=»Nombre» />
- <GridViewColumn Header=»Apellido» />
- <GridViewColumn Header=»Dirección» />
- </GridView>
- </ListView.View>
- <!– Whatever you might have in here –>
- </ListView>
Debéis fijaros que además de asignar el estilo debemos de poner la propiedad AlternationCount a 2 y ya esta
Una de las respuestas que he dado en los foros de MSDN es como crear un estilo para el control ListView