WPF DataGrid SelectedRow仅突出显示数据单元格中的文本

时间:2018-08-22 14:59:50

标签: wpf datagrid

我在WPF应用程序(窗口)中有一个简单的DataGrid,当选择一行时,仅突出显示该行数据单元格中的文本(背景色),而不突出显示整个行。

如何突出显示整个行的背景颜色?

Sample DataGrid

DataGrid的XAML:

<DataGrid Name="dgPodatki"
          ItemsSource="{Binding}"
          AutoGenerateColumns="False"
          SelectionMode="Single"
          SelectionChanged="dgPodatki_SelectionChanged"
          MouseDoubleClick="dgPodatki_MouseDoubleClick"
          CanUserAddRows="false"
          IsReadOnly="True">
    <DataGrid.ColumnHeaderStyle>
        <Style TargetType="{x:Type DataGridColumnHeader}">
            <Setter Property="FontSize" Value="14"/>
        </Style>
    </DataGrid.ColumnHeaderStyle>
    <DataGrid.CellStyle>
        <Style TargetType="{x:Type DataGridCell}">
            <Setter Property="FontSize" Value="14"></Setter>
        </Style>
    </DataGrid.CellStyle>
    <DataGrid.Columns>

        ...

    </DataGrid.Columns>
</DataGrid>

1 个答案:

答案 0 :(得分:0)

如果要将样式应用于各个列,请将样式设置为:

<DataGridTextColumn.CellStyle>
    <Style>
        <Setter Property="TextBlock.TextAlignment" Value="Right" />
    </Style>
</DataGridTextColumn.CellStyle>

或者,您可以将CellStyle更改为:

<DataGrid.CellStyle>
    <Style TargetType="{x:Type DataGridCell}">
        <Setter Property="FontSize" Value="14" />
        <Setter Property="TextBlock.TextAlignment" Value="Right" />
    </Style>
</DataGrid.CellStyle>