none
能否设置GridViewColumn的header和DisplayMemberBinding的字体颜色? RRS feed

  • 问题

  • 有能简便设置GridViewColumn的header和DisplayMemberBinding的字体颜色(绑定SolidColorBrush字段)的方式吗?除了自定义header和自定义GridViewColumn.CellTemplate外还有其他的简便办法吗?
    • 已编辑 Trian555 2018年10月19日 7:38
    2018年10月19日 7:37

答案

  • Hi Trian555,

    >>有能简便设置GridViewColumn的header和DisplayMemberBinding的字体颜色(绑定SolidColorBrush字段)的方式吗?除了自定义header和自定义GridViewColumn.CellTemplate外还有其他的简便办法吗?

    据我所知,我们常用的设置是通过GridViewColumn.CellTemplate和GridViewColumnHeader来定义颜色。没有特别的简便的方法。

    使用SolidColorBrush字段并赋予不同的颜色来显示状态。你可以参考下面思路。 定义一个依赖属性,绑定到对应的列上

                      <GridViewColumn Width="120"    DisplayMemberBinding="{Binding Name}">
                            <GridViewColumnHeader Content="Name" Foreground="{Binding RelativeSource={RelativeSource FindAncestor,AncestorType={x:Type Window}},Path=TheColor}"  >
                            </GridViewColumnHeader>
                        </GridViewColumn>
    public static readonly DependencyProperty TheColorProperty =
    DependencyProperty.Register("TheColor", typeof(System.Windows.Media.SolidColorBrush), typeof(Listviewwithgridview), new UIPropertyMetadata(new SolidColorBrush(Colors.Red), FinalValueChanged));
    
            private static void FinalValueChanged(DependencyObject obj, DependencyPropertyChangedEventArgs e)
            {
    
            }
    
            public System.Windows.Media.SolidColorBrush TheColor
            {
                get { return (System.Windows.Media.SolidColorBrush)GetValue(TheColorProperty); }
                set { SetValue(TheColorProperty, value); }
            }


    Best Regards,

    Yong Lu


    MSDN Community Support
    Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.

    • 已标记为答案 Trian555 2018年12月6日 1:00
    2018年10月22日 9:05
    版主