DataGrid Row& XAML中的单元格样式

时间:2016-11-15 15:25:06

标签: c# wpf xaml datagrid

我想在app.xaml中设置DataGrid样式。我尝试添加样式,但我不确定添加Cell和Row样式所需的语义。

这是我到目前为止所尝试过的;

<Style TargetType="DataGrid" x:Name="noighlightRowDataGrid">
    <DataGrid.CellStyle>
        <Style TargetType="DataGridCell">
            <Style.Triggers>
                <Trigger Property="IsSelected"
                Value="True">
                    <Setter Property="Background"
                Value="White" />
                    <Setter Property="Foreground"
                Value="Black" />
                </Trigger>
            </Style.Triggers>
        </Style>
    </DataGrid.CellStyle>
    <DataGrid.RowStyle>
        <Style TargetType="DataGridRow">
            <Style.Triggers>
                <Trigger Property="IsSelected"
                Value="True">
                    <Setter Property="BorderBrush"
                Value="Blue" />
                    <Setter Property="BorderThickness" Value="2" />
            </Trigger>
        </Style.Triggers>
    </Style>
</DataGrid.RowStyle>

我可以看到将DataGrid.CellStyle放入DataGrid样式是不行的,但就像我说我不确定如何正确创建样式。

1 个答案:

答案 0 :(得分:0)

您可以单独指定行和单元格样式。

<Style TargetType="DataGridCell">
    <Style.Triggers>
        <Trigger Property="IsSelected" Value="True">
            <Setter Property="Background" Value="White" />
            <Setter Property="Foreground" Value="Black" />
        </Trigger>
    </Style.Triggers>
</Style>
<Style TargetType="DataGridRow">
    <Style.Triggers>
        <Trigger Property="IsSelected" Value="True">
            <Setter Property="BorderBrush" Value="Blue" />
            <Setter Property="BorderThickness" Value="2" />
        </Trigger>
    </Style.Triggers>
</Style>