How to right align text in a DataGrid column heade

2020-07-02 08:55发布

问题:

I have a WPF DataGrid with a column header as follows:

<DataGridTemplateColumn Header="Length" Width="100">
     ...
</DataGridTemplateColumn>

How do I make this header align right? Thanks. I know how to align the column content. Emphasis is aligning COLUMN HEADER.

回答1:

Set the HorizontalContentAlignment of the header using the HeaderStyle:

<DataGridTemplateColumn.HeaderStyle>
    <Style TargetType="DataGridColumnHeader">
        <Setter Property="HorizontalContentAlignment" Value="Right"/>
    </Style>
</DataGridTemplateColumn.HeaderStyle>


回答2:

H.B's answer is correct; just add one more line:

<DataGridTextColumn.HeaderStyle>
    <Style TargetType="{x:Type DataGridColumnHeader}">
      <Setter Property="HorizontalAlignment" Value="Stretch"/>
      <Setter Property="HorizontalContentAlignment" Value="Right"/>
    </Style>
</DataGridTextColumn.HeaderStyle>