WPF DataGrid页眉样式

问题描述:

我想为WPF DataGrid创建一个自定义样式的页眉,但我不知道是否可以做我想做的事,以及是否应该如何做。WPF DataGrid页眉样式

DataGrid的草图位于链接的图片上。紫色标题延伸到DataGrid的边缘之外,并且它有一点3D弯曲。

DataGrid

我可以做这样的事情与WPF DataGrind,如果是我该如何开始?

谢谢!

这是可能的,但它是一个很多的工作,并需要很好的编写WPF模板的知识。你基本上是想要做的是替换模板的DataGrid,和所有其他的DataGrid相关conotrols如DataGridRow等

微软提供的如何做到这一点在这里一个完整的例子:https://msdn.microsoft.com/en-us/library/vstudio/ff506248(v=vs.100).aspx

的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的内部,然后窥视它,看看它在运行时的样子。这将清除您的许多概念。

+0

很好的答案。我还不知道上下文菜单可以创建模板。生成的模板为自己的修改提供了一个很好的起点。 – Martin

+0

@Martin单独提出这个问题,我会试着回答。 – AnjumSKhan