我有一个 C# WinUI 3 桌面应用程序 (VS 2019) - 在数据网格单元格中右对齐文本

问题描述 投票:0回答:1

使用数据网格。 我想右对齐某些列。 我下面的方法试过了,不行。 有谁知道正确的方法吗? 非常感谢。

        <Grid Grid.Row="2" HorizontalAlignment="Center">
            <controls:DataGrid x:Name="Results_DataGrid"  
                           AutoGenerateColumns="False"
                           CanUserSortColumns="False"
                           AreRowDetailsFrozen="True"
                           BorderBrush="#005986"
                           BorderThickness="2 2 2 2"
                           Margin="3 10 3 5"
                           PointerReleased="Results_DataGrid_PointerReleased">
                <controls:DataGrid.Columns>
                    <controls:DataGridTextColumn
                            Header="Jan"
                            Width="SizeToHeader"
                            Binding="{Binding Jan}"
                            FontSize="11"
                            Foreground="Black" 
                            >
                        **<controls:DataGridTextColumn.ElementStyle>
                            <Style TargetType="controls:DataGridCell">
                                <Setter Property="HorizontalAlignment" Value="Right"/>
                            </Style>
                        </controls:DataGridTextColumn.ElementStyle>**
                    </controls:DataGridTextColumn>
                </controls:DataGrid.Columns>
            </controls:DataGrid>
xaml datagrid winui-3 winui windows-community-toolkit
1个回答
2
投票

ElementStyle
中的
DataGridTextColumn
目标为
TextBlock

<controls:DataGridTextColumn.ElementStyle>
    <Style TargetType="TextBlock">
        <Setter Property="HorizontalTextAlignment" Value="Right" />
    </Style>
</controls:DataGridTextColumn.ElementStyle>

我也可以使用

CellStyle
来实现此目的。

<controls:DataGridTextColumn.CellStyle>
    <Style TargetType="controls:DataGridCell">
        <Setter Property="HorizontalContentAlignment" Value="Right" />
    </Style>
</controls:DataGridTextColumn.CellStyle>
© www.soinside.com 2019 - 2024. All rights reserved.