Wpf datagrid чередует окраску строк
Я пробовал этот метод.. без везения..
<Style TargetType="{x:Type DataGridRow}">
<Style.Triggers>
<Trigger Property="ItemsControl.AlternationIndex" Value="0">
<Setter Property="Foreground" Value="Red" />
</Trigger>
</Style.Triggers>
</Style>
Есть ли способ получить индекс строки?
Я даже попробовал
<DataTrigger Binding="{Binding AlternationIndex}" Value="0">
<Setter Property="Foreground" Value="Green"></Setter>
</DataTrigger>
Ответы
Ответ 1
Если это уже сделано, вам нужно установить свойство AlternationCount DataGrid:
<DataGrid AlternationCount="2"
... />
Вы также должны проверить, используется ли свойство Foreground для любого элемента управления в DataGridRow. Попробуйте установить свойство Background, чтобы проверить материал чередования.
Ответ 2
Наконец, это то, что я закончил, чтобы в целом устанавливать альтернативные цвета строк.
<Style TargetType="{x:Type DataGrid}">
<Setter Property="Background" Value="#FFF" />
<Setter Property="AlternationCount" Value="2" />
</Style>
<Style TargetType="{x:Type DataGridRow}">
<Style.Triggers>
<Trigger Property="ItemsControl.AlternationIndex" Value="0">
<Setter Property="Background" Value="#CCC"></Setter>
</Trigger>
<Trigger Property="ItemsControl.AlternationIndex" Value="1">
<Setter Property="Background" Value="#EEE"></Setter>
</Trigger>
</Style.Triggers>
</Style>
Ответ 3
Попробуйте установить альтернативный фон следующим образом:
AlternationCount="2" AlternatingRowBackground="Bisque"
Ответ 4
Попробуйте это
<DataGrid AlternationCount="2"
AlternatingRowBackground="Salmon" ........