WPF DataGrid Header styling

本文关键字:styling Header DataGrid WPF | 更新日期: 2023-09-27 18:16:29

我想为WPF DataGrid创建一个自定义样式的头,但我不知道是否有可能做我想做的,如果是我应该怎么做。

数据网格的草图在链接的图片上。紫色页眉延伸到DataGrid的边缘之外,并且有一点3D弯曲。

DataGrid

我可以用WPF datagind做这样的事情吗?如果是,我该如何开始?

谢谢!

WPF DataGrid Header styling

DataGrid允许设置ColumnHeaderStyle, CellStyle和更多的样式。在设计器视图>查看其他模板中右键单击DataGrid控件将显示完整的列表。

你必须使用以下语句:

<Style x:Key="DataGridColumnHeaderStyle1" TargetType="{x:Type DataGridColumnHeader}">
    <Setter Property="Background" Value="Orange"/>
    <Setter Property="FontSize" Value="20"/>
    <Setter Property="Padding" Value="5"/>
    <Setter Property="BorderBrush" Value="Red"/>
    <Setter Property="BorderThickness" Value="0 0 3 0"/>
</Style>

这将改变列标题。如果你也想改变单元格,你也可以为DataGridCell提供样式。

首先使用Snoop工具窥视DataGrid内部,并窥视它,看看它在运行时的样子。

这是可能的,但这是一个大量的工作,需要非常好的编写WPF模板的知识。你本质上要做的是替换DataGrid的模板,和所有其他与DataGrid相关的控件,如DataGridRow等

Microsoft提供了一个完整的示例:https://msdn.microsoft.com/en-us/library/vstudio/ff506248(v=vs.100).aspx