WPF DataGrid标头样式

时间:2015-10-06 17:24:23

标签: c# wpf datagrid expression-blend blend

我想为WPF DataGrid创建一个自定义样式标题,但我不知道是否可以做我想做的事情,以及我应该怎么做。

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

DataGrid

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

谢谢!

2 个答案:

答案 0 :(得分:1)

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中查看并查看它以查看它在运行时的外观。这将清除你的许多概念。

答案 1 :(得分:-1)

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

Microsoft在此处提供了完整示例,说明如何执行此操作:https://msdn.microsoft.com/en-us/library/vstudio/ff506248(v=vs.100).aspx