我无法在wpf C#中水平对齐数据网格内的文本



我想在数据网格中对齐我的列。我该怎么做?我还使用了HorizontalContentAlignment=";"居中";但它没有起作用。感谢您的帮助

<DataGrid Margin="0,69,0,0" x:Name="dgv_Useradmin" FlowDirection="RightToLeft"
CanUserDeleteRows="False" CanUserResizeRows="False" CanUserReorderColumns="False" ColumnWidth="*" Background="Azure"
FontFamily="B Roya" FontWeight="Bold" FontStretch="UltraCondensed" BorderBrush="#29bb89" OpacityMask="#e84545" HorizontalAlignment="Center"
CanUserAddRows="False" AlternatingRowBackground="Bisque" IsReadOnly="True" AutoGenerateColumns="False" HorizontalContentAlignment="Center"
RowDetailsVisibilityMode="Visible" SelectedIndex="0" LoadingRow="Dgv_Useradmin_OnLoadingRow">
<!--DataColumn-->
<DataGrid.Columns>
<DataGridTextColumn Header="RN" Width="65" Binding="{Binding RelativeSource={RelativeSource AncestorType=DataGridRow}, Converter={convertor:RowToIndexConverter}}"/>
<DataGridTextColumn Header="LogID" Binding="{Binding LogID}" Visibility="Hidden"/>
<DataGridTextColumn Header="Username" Binding="{Binding Username }"/>
<DataGridTextColumn Header="Pass" Binding="{Binding PassWord}" Visibility="Hidden"/>
<DataGridTextColumn Header="Number" Binding="{Binding NumberPhone}"/>
</DataGrid.Columns>

显示一列。对于其余列,情况也是如此。

<DataGrid.Columns>
<DataGridTemplateColumn Header="RN" Width="65">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding RelativeSource={RelativeSource AncestorType=DataGridRow}, Converter={convertor:RowToIndexConverter}}"
TextAlignment="Center"/>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
<!--If editing is envisaged-->
<DataGridTemplateColumn.CellEditingTemplate>
<DataTemplate>
<TextBox Text="{Binding RelativeSource={RelativeSource AncestorType=DataGridRow}, Converter={convertor:RowToIndexConverter}}"
HorizontalContentAlignment="Center"/>
</DataTemplate>
</DataGridTemplateColumn.CellEditingTemplate>
</DataGridTemplateColumn>
<DataGridTextColumn Header="LogID" Binding="{Binding LogID}" Visibility="Hidden"/>
<DataGridTextColumn Header="Username" Binding="{Binding Username }"/>
<DataGridTextColumn Header="Pass" Binding="{Binding PassWord}" Visibility="Hidden"/>
<DataGridTextColumn Header="Number" Binding="{Binding NumberPhone}"/>
</DataGrid.Columns>

要使标题居中,需要给它一个样式:

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

最新更新