8

有什么线索吗?下面的代码不能正常工作...

谢谢!

 <DataGrid AutoGenerateColumns="False"  VerticalAlignment="Stretch" HorizontalAlignment="Stretch"  Name="dg1"   Grid.Row="0" >
     <DataGridTemplateColumn  Width="SizeToCells" IsReadOnly="True">
         <DataGridTemplateColumn.HeaderTemplate>
             <DataTemplate>
                 <Label HorizontalAlignment="Center" Content="First Name"></Label>
             </DataTemplate>
          </DataGridTemplateColumn.HeaderTemplate>
          <DataGridTemplateColumn.CellTemplate>
              <DataTemplate>
                 <Label Content="{Binding FirstName}" />
              </DataTemplate>
          </DataGridTemplateColumn.CellTemplate>
     </DataGridTemplateColumn>

更新:

@ArsenMkrt 的解决方案很棒,但我面临一些奇怪的垂直线......

在此处输入图像描述

4

4 回答 4

16

使用HeaderStyle代替HeaderTemplate

    <DataGridTemplateColumn.HeaderStyle>
        <Style TargetType="{x:Type DataGridColumnHeader}">
            <Setter Property="HorizontalAlignment" Value="Center"/>
        </Style>
    </DataGridTemplateColumn.HeaderStyle> 
于 2012-12-06T16:28:49.397 回答
10

试试这个它适用于我将标题居中而没有任何问题。

<DataGridTemplateColumn.HeaderStyle>
    <Style TargetType="DataGridColumnHeader">
        <Setter Property="HorizontalContentAlignment" Value="Center"/>
    </Style>
</DataGridTemplateColumn.HeaderStyle>
于 2014-09-02T05:20:41.600 回答
6

不知道是否仍然有帮助,但这样做:

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

将标题居中而没有竖线问题

于 2014-02-05T22:19:53.473 回答
2

这里的所有答案都解决了问题,但主题与其他列标题不同。所以一点点改变对我来说就是诀窍。如果有人还在寻找它,那就是这里。

<DataGridTemplateColumn.HeaderStyle>
    <Style TargetType="DataGridColumnHeader">
        <Setter Property="HorizontalAlignment" Value="Stretch"/>
        <Setter Property="HorizontalContentAlignment" Value="Center"/>
        <Setter Property="Background" Value="Transparent"/>
    </Style>
</DataGridTemplateColumn.HeaderStyle>
于 2017-10-03T11:38:15.073 回答