Как я могу предотвратить alternatingRowBackground для определенных столбцов в DataGrid WPF? - PullRequest
0 голосов
/ 29 августа 2018

Я имею в виду, я не хочу alternatingRowBackground для строк в нескольких столбцах

<DataGrid
    AutoGenerateColumns="False" AlternatingRowBackground="LightBlue" AlternationCount="2"
    CanUserResizeRows="False" CanUserResizeColumns="False" CanUserAddRows="false"
    CanUserDeleteRows="false" CanUserReorderColumns="false" CanUserSortColumns="false"
    FontSize="15" FontWeight="SemiBold" ItemsSource="{Binding Collection}"
    SelectedIndex="{Binding SelectedRowIndex, Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"
    Grid.ColumnSpan="2" RowHeaderWidth="0"
>

1 Ответ

0 голосов
/ 29 августа 2018

Вы можете использовать свойство CellStyle, чтобы установить другой стиль для ячеек в определенном столбце.

<DataGrid AutoGenerateColumns="False" AlternatingRowBackground="LightBlue" AlternationCount="2"
        CanUserResizeRows="False" CanUserResizeColumns="False" CanUserAddRows="false"
        CanUserDeleteRows="false" CanUserReorderColumns="false" CanUserSortColumns="false"
        FontSize="15" FontWeight="SemiBold" ItemsSource="{Binding Collection}"
        SelectedIndex="{Binding SelectedRowIndex, Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"
        Grid.ColumnSpan="2" RowHeaderWidth="0">
    <DataGrid.Resources>
        <Style TargetType="DataGridCell" x:Key="WhiteBackgroundCell">
            <Setter Property="Background" Value="White" />
        </Style>
    </DataGrid.Resources>
    <DataGrid.Columns>
        <DataGridTextColumn Binding="{Binding Prop1}" Header="Prop1" CellStyle="{StaticResource WhiteBackgroundCell}" />
        <DataGridTextColumn Binding="{Binding Prop2}" Header="Prop2" />
    </DataGrid.Columns>
</DataGrid>
...