文章目录
Datagrid列的文本居中
<!--列的文本居中-->
<Style x:Key="DataGridTextColumnCenterSytle" TargetType="{x:Type TextBlock}">
<Setter Property="HorizontalAlignment" Value="Center" />
<Setter Property="VerticalAlignment" Value="Center" />
</Style>
等同于
//设置居中样式( 推荐使用FindResource(name)来查找xaml)中的示例)
Style headerStyle = new Style() {
TargetType = typeof(TextBlock) };
headerStyle.Setters.Add(new Setter() {
Property = TextBlock.HorizontalAlignmentProperty, Value = HorizontalAlignment.Center });
eaderStyle.Setters.Add(new Setter() {
Property = TextBlock.VerticalAlignmentProperty, Value = VerticalAlignment.Center });
Datagrid列的头部标题居中
<DataGrid.ColumnHeaderStyle>
<!--使每一列的头部标题居中-->
<Style TargetType="DataGridColumnHeader">
<Setter Property="HorizontalContentAlignment" Value="Center"/>
</Style>
</DataGrid.ColumnHeaderStyle>
Datagrid列动态创建及设置居中显示
public void CreateGridColumn(DataTable dt)
{
grid.Columns.Clear();
//设置居中样式( 推荐使用FindResource(name)来查找xaml)中的示例)
Style headerStyle = new Style() {
TargetType = typeof(TextBlock) };
headerStyle.Setters.Add(new Setter() {
Property = TextBlock.HorizontalAlignmentProperty, Value = HorizontalAlignment.Center });
headerStyle.Setters.Add(new Setter() {
Property = TextBlock.VerticalAlignmentProperty, Value = HorizontalAlignment.Center });
foreach (DataColumn column in dt.Columns)
{
var colName = column.ColumnName;
var gridColumn = new DataGridTextColumn<