如何自定义RadGridView的标题?

时间:2016-03-10 17:57:39

标签: 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" 
                      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>

设计师给了我这个结果而且相当难看:

enter image description here

我需要标题有不同的颜色,并且可以显示大量文本,如下图所示::

enter image description here

非常感谢你!

1 个答案:

答案 0 :(得分:3)

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

例如:

<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>