zoukankan      html  css  js  c++  java
  • 继续聊WPF——设置网格控件列标题的样式

      

    我很奇怪的是,微软那厮是怎么搞的,Blend里面居然不能编辑GridView的样式,十万般无奈之下,只好手写XAML来处理了。

    要想知道一个控件的样式是如何设置,看控件类的定义很重要,我们来看看GridView是如何定义的:

    1. [StyleTypedPropertyAttribute(Property = "ColumnHeaderContainerStyle", StyleTargetType = typeof(GridViewColumnHeader))][ContentPropertyAttribute("Columns")]public class GridView : ViewBase, IAddChild  
    从上面的定义中找到两个关键点:
    一、设置列标题的样式的属性——ColumnHeaderContainerStyle;
    二、目标类型——GridViewColumnHeader
    好,有了这些信息,我们就好办了,把样式定义到资源中
    1. <Window.Resources>  
    2.     <Style x:Key="st" TargetType="GridViewColumnHeader">  
    3.         <Style.Setters>  
    4.             <Setter Property="Background">  
    5.                 <Setter.Value>  
    6.                     <LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">  
    7.                         <GradientStop Color="White" Offset="0"/>  
    8.                         <GradientStop Color="Orange" Offset="1"/>  
    9.                     </LinearGradientBrush>  
    10.                 </Setter.Value>  
    11.             </Setter>  
    12.         </Style.Setters>  
    13.     </Style>  
    14.     <c:Emps x:Key="epc" />  
    15. </Window.Resources>  
     
    接着我们定义ListView,把样式应用到Gridview的ColumnHeaderContainerStyle属性上。
            <ListView ItemsSource="{Binding Source={StaticResource epc}}">
                <ListView.View>
                    <GridView AllowsColumnReorder="True" ColumnHeaderContainerStyle="{StaticResource st}">
                        <GridViewColumn DisplayMemberBinding="{Binding Path=Name}" Header="员工姓名"/>
                        <GridViewColumn DisplayMemberBinding="{Binding Path=Age}" Header="员工年龄"/>
                    </GridView>
                </ListView.View>
            </ListView>
     
     

  • 相关阅读:
    HDU 1288 Hat's Tea
    一二三 湖南第七届省赛
    报数游戏 湖南省第七届省赛
    FZOJ--2221-- RunningMan 福建第六届省赛
    Problem 2214 Knapsack problem 福建第六届省赛
    FZU 2212 Super Mobile Charger 第六届福建省赛
    FZU 2213 Common Tangents 第六届福建省赛
    1002: Prime Path
    wampserver apache2.4.9允许外网访问
    SCU 4438 字符串哈希
  • 原文地址:https://www.cnblogs.com/xieweikai/p/6832786.html
Copyright © 2011-2022 走看看