Datagrid文本对齐方式

Mar*_*k W 7 wpf datagrid wpftoolkit c#-4.0

我想知道是否有人有一个简单的方法来使WPF数据网格中的文本居中对齐.我让数据网格工作得很好,但正确的文本对齐困扰了我.我搞砸了一些,并下载了wpftoolkit,但这些示例要么不起作用,要么给我一个编译错误.我确实将对wpftoolkit的引用添加到了我的项目中.任何帮助,将不胜感激.谢谢

数据网格的xaml如下

<WpfToolkit:DataGrid AutoGenerateColumns="True" Margin="15,15,10,65" Name="DG1" CanUserReorderColumns="False" />
Run Code Online (Sandbox Code Playgroud)

Qua*_*ter 18

如果在DataGrid 上将Block.TextAlignment属性设置为Center,它将由DataGridTextColumns中使用的TextBlocks和TextBoxes继承,并将文本居中:

<WpfToolkit:DataGrid
    Block.TextAlignment="Center"
    AutoGenerateColumns="True"
    Margin="15,15,10,65"
    Name="DG1"
    CanUserReorderColumns="False" />
Run Code Online (Sandbox Code Playgroud)

如果要在单元格中对齐文本但不在标题中或Grid中的其他位置对齐文本,可以使用CellStyle在DataGridCell上设置属性:

<WpfToolkit:DataGrid
    AutoGenerateColumns="True"
    Margin="15,15,10,65"
    Name="DG1"
    CanUserReorderColumns="False">
    <WpfToolkit:DataGrid.CellStyle>
        <Style TargetType="WpfToolkit:DataGridCell">
            <Setter Property="Block.TextAlignment" Value="Center"/>
        </Style>
    </WpfToolkit:DataGrid.CellStyle>
Run Code Online (Sandbox Code Playgroud)

  • 如果要获得更细粒度,还可以在各个列上设置ElementStyle属性.在这种情况下,您可能希望使用BasedOn ="{x:Static DataGridTextColumn.DefaultElementStyle}". (4认同)