我没有用过GridView
个人,但快速的网络搜索导致我:
GridView Column Header Styles and Templates Overview
该网页链接到其他网页解释你可以GridView
列标题做各种事情。它看起来像有多种方法来设置“颜色”(不知道如果你的意思是Foreground
或Background
),但使用Style
似乎是你可能想要的。您可以设置的样式应用到所有列标题是这样的:
<GridView>
<GridView.ColumnHeaderContainerStyle>
<Style TargetType="{x:Type GridViewColumnHeader}">
<!-- Set any properties you want to set -->
<Setter Property="Background" Value="LightBlue" />
<Setter Property="Foreground" Value="Black" />
<Setter Property="FontWeight" Value="Bold" />
</Style>
</GridView.ColumnHeaderContainerStyle>
</GridView>
您可以覆盖头部的风格像这样的特定列:
<GridViewColumn Header="Something">
<GridViewColumn.HeaderContainerStyle>
<Style TargetType="{x:Type GridViewColumnHeader}">
<!-- Set any properties you want to set -->
<Setter Property="Background" Value="DarkBlue" />
<Setter Property="Foreground" Value="White" />
<Setter Property="FontWeight" Value="Bold" />
</Style>
</GridViewColumn.HeaderContainerStyle>
</GridViewColumn>
编辑:虽然你可以使用自定义最事情styes和数据模板(在本答案的顶部链接概述中介绍了这些模板),但有些东西是不可定制的,因为它们被烘焙到控件模板中 - 例如每个列标题上方和下方显示的边框。如果您需要修改其中的任何内容,则需要设置样式,将Template
属性设置为您创建的自定义ControlTemplate
。
如果您想为列标题创建自己的控件模板,我建议您首先将example template复制到您的应用程序资源中。然后调整你需要调整的部分。请记住,在控件上设置Template
属性完全取代了模板,这意味着您必须定义要使用的整个模板,而不是简单地定义要与默认不同的部分。
非常感谢,请参阅我的标题的当前状态:http://s3.postimg.org/65zkepm03/Untitled.png如何删除标题的上一行? (只有上面的那个)和标题名称之间的行 –
不幸的是,该边框内置在[列标题控件的控制模板]中(https://msdn.microsoft.com/en-us/library/ms788747。 aspx)(名为'ColumnHeaderBorder')。除非您编写自己的模板,否则无法修改它。 – Xavier
如果您想要探索某些内容,请使用关于覆盖控件模板的信息更新答案。 – Xavier