在DevExpress网格中更改列标题的字体

时间:2013-11-26 01:24:04

标签: .net xaml devexpress font-size gridcontrol

我有一个DevExpress网格,其中包含一些可编辑的列。 希望用户轻松了解它们是否可编辑,因此请考虑将列标题更改为“粗体”。

<dxg:GridControl.Columns>
    <dxg:GridColumn Header="Region" FieldName="Region" ReadOnly="False" Style="{StaticResource DxEditableColumnsStyle}" />
    <dxg:GridColumn Header="Id" FieldName="Id" ReadOnly="True" Style="{StaticResource DxColumnsStyle}"/>
    <dxg:GridColumn Header="Entity" FieldName="Entity" ReadOnly="False" Style="{StaticResource DxEditableColumnsStyle}"/>
</dxg:GridControl.Columns>

Woudl你知道怎么做吗?我试过通过我的dictonnary中的一些setter更新这个但是它不起作用:

<Style TargetType="dxg:GridColumn" x:Key="DxEditableColumnsStyle">
    <Setter Property="CellStyle">
        <Setter.Value>
            <Style TargetType="{x:Type dxg:GridColumn}">
                <Setter Property="TextBlock.FontWeight" Value="Bold" />
            </Style>
        </Setter.Value>
    </Setter>
</Style>
谢谢你!

1 个答案:

答案 0 :(得分:2)

要完成此任务,我建议您使用TableView.ColumnHeaderContentStyle属性。在此样式中,您可以将TextBlock.FontHeight附加属性绑定到GridColumn.ReadOnly属性(通过转换器):

<dxg:TableView.ColumnHeaderContentStyle>
    <Style TargetType="dxg:HeaderContentControl">
        <Setter Property="TextBlock.FontHeight" Value="{Binding ReadOnly, Converter={StaticResource YourReadOnlyToFontHeightConverter}}"/>
    </Style>
</dxg:TableView.ColumnHeaderContentStyle>