runxinzhi.com
首页
百度搜索
继续聊WPF——为ListView的行设置样式
关键点:要设置ListView的行样式,设置Listview的ItemContainerStyle属性,但在本例中,由于我把样式应用于所有的ListViewItem,故不用设置该属性。
<Window x:Class="Wpf_GridHeaderStyle_sample.Window1" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:c="clr-namespace:Wpf_GridHeaderStyle_sample" Title="Window1" Height="300" Width="300"> <Window.Resources> <ControlTemplate x:Key="tmpForThumb" TargetType="{x:Type Thumb}"> <Border> <Rectangle Width="1" Name="rec"> <Rectangle.Fill> <LinearGradientBrush StartPoint="0.5,0.3" EndPoint="1,1"> <GradientStop Color="Orange" Offset="0.22"/> <GradientStop Color="White" Offset="1"/> </LinearGradientBrush> </Rectangle.Fill> </Rectangle> </Border> <ControlTemplate.Triggers> <Trigger Property="IsMouseOver" Value="True"> <Setter TargetName="rec" Property="Fill" Value="LightGreen"/> </Trigger> </ControlTemplate.Triggers> </ControlTemplate> <Style TargetType="{x:Type GridViewColumnHeader}"> <Setter Property="OverridesDefaultStyle" Value="True"/> <Setter Property="Template"> <Setter.Value> <ControlTemplate TargetType="{x:Type GridViewColumnHeader}"> <Grid Name="g"> <Grid.Background> <LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1"> <GradientStop Color="Gold" Offset="0.3"/> <GradientStop Color="LightYellow" Offset="1"/> </LinearGradientBrush> </Grid.Background> <Border Name="bd" Padding="{TemplateBinding Padding}"> <ContentPresenter Margin="5,4,1,3" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"/> </Border> <Thumb Name="PART_HeaderGripper" Template="{StaticResource tmpForThumb}" HorizontalAlignment="Right" Margin="0,0,-1,0"/> </Grid> <ControlTemplate.Triggers> <Trigger Property="IsMouseOver" Value="True"> <Setter TargetName="g" Property="Background"> <Setter.Value> <LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1"> <GradientStop Color="DeepPink" Offset="0.3"/> <GradientStop Color="White" Offset="1"/> </LinearGradientBrush> </Setter.Value> </Setter> </Trigger> </ControlTemplate.Triggers> </ControlTemplate> </Setter.Value> </Setter> </Style> <!--数据源--> <c:Students x:Key="DBSource"/> <!--ListViewItem的样式--> <Style TargetType="{x:Type ListViewItem}"> <Style.Setters> <Setter Property="SnapsToDevicePixels" Value="True"/> <Setter Property="Template"> <Setter.Value> <ControlTemplate TargetType="{x:Type ListViewItem}"> <Border x:Name="bd" BorderThickness="1" Padding="{TemplateBinding Padding}" SnapsToDevicePixels="True"> <GridViewRowPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="3"/> </Border> <ControlTemplate.Triggers> <Trigger Property="IsSelected" Value="True"> <Trigger.Setters> <Setter TargetName="bd" Property="Background"> <Setter.Value> <LinearGradientBrush StartPoint="0.5,0.22" EndPoint="0.5,1"> <GradientStop Color="LightGray" Offset="0.31"/> <GradientStop Color="Gray" Offset="0.88"/> </LinearGradientBrush> </Setter.Value> </Setter> </Trigger.Setters> </Trigger> </ControlTemplate.Triggers> </ControlTemplate> </Setter.Value> </Setter> </Style.Setters> </Style> </Window.Resources> <Grid> <ListView x:Name="lv" ItemsSource="{StaticResource DBSource}"> <ListView.View> <GridView AllowsColumnReorder="True"> <GridViewColumn DisplayMemberBinding="{Binding Path=Name}" Header="姓名" Width="110"/> <GridViewColumn DisplayMemberBinding="{Binding Path=Phone}" Header="联系电话" Width="125"/> </GridView> </ListView.View> </ListView> </Grid> </Window>
相关阅读:
PHP生成二维码并上传到七牛云
算法入门---选择排序
算法入门
react入门-refs
react入门-props.children
react入门-组件方法、数据和生命周期
react入门-jsx
递归
node的path.join 和 path.resolve的区别
vuex的使用
原文地址:https://www.cnblogs.com/javawebsoa/p/2457971.html
最新文章
hihocoder1260,1261 (HASH经典题)
Spring boot 入门篇
简述 Spring Cloud 是什么2
简述 Spring Cloud 是什么1
Spring Boot简介
React Refs
React 表单与事件
React AJAX
React 组件生命周期
React 组件 API
热门文章
React Props
html页面出现'& #65279',影响布局
SQL语言分类DQL,DML,DDL,DCL,DTL
LAMP和LNMP去除index.php访问
VMware下Mac系统自适应屏幕
博客园添加打赏功能只需简单四步
VMware下Centos7快速搭建vsftpd
七牛云注册创建oss并配置自定义域名
设计模式【PHP案例】
【长期更新】 PHP题目
Copyright © 2020-2023
润新知