Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何自定义RadGridView的标题?_C#_Wpf_Telerik_Telerik Grid - Fatal编程技术网

C# 如何自定义RadGridView的标题?

C# 如何自定义RadGridView的标题?,c#,wpf,telerik,telerik-grid,C#,Wpf,Telerik,Telerik Grid,我正在使用Telerik控件创建一个WPF项目。我需要创建一个GridView来显示一些数据,只有列标题应该是不同的颜色。 我有这个,但不起作用: <telerik:RadGridView x:Name="dtgResum" VerticalAlignment="Stretch" AutoGenerateColumns="False" HorizontalAlignment="Stretch" FontSize="18" Margin="10,10,10,10"

我正在使用Telerik控件创建一个WPF项目。我需要创建一个GridView来显示一些数据,只有列标题应该是不同的颜色。 我有这个,但不起作用:

<telerik:RadGridView x:Name="dtgResum" VerticalAlignment="Stretch" AutoGenerateColumns="False" HorizontalAlignment="Stretch" FontSize="18" Margin="10,10,10,10" 
                      RowIndicatorVisibility="Collapsed" 
                      IsReadOnly="True" 
                      ShowGroupPanel="False"      
                      CanUserFreezeColumns="False" 
                      CanUserReorderColumns="False" 
                      CanUserResizeColumns="False" 
                      CanUserSortColumns="False" 
                      IsFilteringAllowed="True" 
                      ColumnWidth="*" 
                      AlternationCount="2" 
                      AlternateRowBackground="#EFEFEF">
            <telerik:RadGridView.Columns>
                <telerik:GridViewDataColumn x:Name="colEstatus" Header="ESTATUS" Background="#538DD5"/>
                <telerik:GridViewDataColumn x:Name="colId" Header="ID" Background="#D9D9D9"/>
                <telerik:GridViewDataColumn x:Name="colMza" Header="MZA" Background="#D9D9D9"/>
                <telerik:GridViewDataColumn x:Name="colLot" Header="LOT" Background="#D9D9D9"/>
                <telerik:GridViewDataColumn x:Name="colNo" Header="No" Background="#D9D9D9"/>
                <telerik:GridViewDataColumn x:Name="colInt" Header="INT" Background="#D9D9D9"/>
                <telerik:GridViewDataColumn x:Name="colEdif" Header="EDIF" Background="#D9D9D9"/>
                <telerik:GridViewDataColumn x:Name="col1" Header="SOME LONG HEADER" Background="#538DD5"/>
                <telerik:GridViewDataColumn x:Name="col2" Header="OTHER LONG HEADER" Background="#538DD5"/>
                <telerik:GridViewDataColumn x:Name="col3" Header="THIS IS A LONG HEADER OF THE COLUMN" Background="#D86B0A"/>
                <telerik:GridViewDataColumn x:Name="col4" Header="THIS IS A LONG HEADER OF THE COLUMN" Background="#D86B0A"/>
                <telerik:GridViewDataColumn x:Name="col5" Header="THIS IS A LONG HEADER OF THE COLUMN" Background="#D86B0A"/>
                <telerik:GridViewDataColumn x:Name="col6" Header="THIS IS A LONG HEADER OF THE COLUMN" Background="#D86B0A"/>
            </telerik:RadGridView.Columns>
        </telerik:RadGridView>

设计师给了我这样一个结果,非常难看:

我需要标题有不同的颜色,可以显示很多文本,如下图所示:


提前非常感谢

有一个属性
HeaderCellStyle
,可用于设置每列标题单元格的样式。您可以在安装文件夹中找到主题的XAML。对于较小的调整,如背景和字体大小,您可以使用“基于”样式并更改这些属性,而不是编辑模板

例:



您需要自定义列标题的样式。请参阅telerik关于此主题的文档:我从未做过类似的事情,因此我发现很难理解如何从头开始创建自己的风格。请举例说明我是如何做到的好吗?我从来没有做过这样的事情,所以我发现很难理解如何从头开始创造我自己的风格。你能举一些例子来说明我是怎么做的吗?,please@Richard-我加了一个例子。如果需要更深入的重新设置样式,您可以在安装目录中找到完整的xaml样式。@Richard-但老实说,如果您从未进行过WPF控件样式设置,我不建议您首先介绍Telerik控件。他们通常有许多“硬编码的”/“非标准的”Gotcha。在尝试测试该示例时,抛出了一个错误:它无法识别或无法访问成员“HeaderColumnStyle”@Richard修复了该代码,该代码应该是
HeaderCellStyle
<telerik:GridViewDataColumn x:Name="colEstatus" Header="ESTATUS">
    <telerik:GridViewDataColumn.HeaderCellStyle>
        <Style TargetType="telerik:GridViewHeaderCell" BasedOn="{StaticResource {x:Type telerik:GridViewHeaderCell}}">
            <Setter Property="Background" Value="#538DD5" />
        </Style>
    </telerik:GridViewDataColumn.HeaderCellStyle>
</telerik:GridViewDataColumn>