当前位置:网站首页>【wpf】ListView 和 ItemsControl 的一点区别
【wpf】ListView 和 ItemsControl 的一点区别
2022-08-02 15:09:00 【code bean】
ItemsControl 实现背景间隔效果
<ItemsControl ItemsSource="{StaticResource datas}" AlternationCount="2">
<ItemsControl.ItemTemplate>
<DataTemplate>
<Grid Background="Transparent" Name="root">
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<TextBlock Text="{Binding Name}"/>
<TextBlock Text="{Binding Age}" Grid.Column="1"/>
</Grid>
<DataTemplate.Triggers>
<Trigger Property="ItemsControl.AlternationIndex" Value="1">
<Setter Property="Background" Value="Orange" TargetName="root"/>
</Trigger>
</DataTemplate.Triggers>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
ListView实现背景间隔效果
listview无法直接通过DataTemplate.Triggers去设置,只能通过ItemContainerStyle的方式
<ListView ItemsSource="{StaticResource datas}" AlternationCount="2">
<ListView.ItemContainerStyle>
<Style TargetType="ListViewItem">
<Style.Triggers>
<Trigger Property="ItemsControl.AlternationIndex" Value="1">
<Setter Property="Background" Value="Orange"/>
</Trigger>
<Trigger Property="IsMouseOver" Value="True">
</Trigger>
</Style.Triggers>
</Style>
</ListView.ItemContainerStyle>
<ListView.ItemTemplate>
<DataTemplate>
<Grid Background="Transparent" Name="root">
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<TextBlock Text="{Binding Name}"/>
<TextBlock Text="{Binding Age}" Grid.Column="1"/>
</Grid>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
通过snoop观察,listview比ItemsControl 多封装了几层:
由于多了个ListViewItem这一次,所以没法直接访问到ItemsControl.AlternationIndex
所以用了ItemContainerStyle的方式去访问。
边栏推荐
猜你喜欢
GFP-GAN学习笔记
2022年值得尝试的7个MQTT客户端工具
美团面试:如何设计一个注册中心?
入门关于 switch case 的理解
祝蔡徐坤生日快乐!
TMS320C6678开发板( DSP+Zynq )RTOS综合功能案例,嵌入式必看!
Advanced usage of vim configuration
类的比较大小(Comparable -> compareTo(类自己实现接口),Comparator -> compare(新建一个类作为比较器))
Brute-force cracking of the latest JVM interview questions of Meituan: unlimited execution
23.支持向量机的使用
随机推荐
Qt | 控件之 QCheckBox
DC-DC选型及电路设计
MySQL-1-环境部署
MySQL的简单运用-where、update、delete、like、union
Advanced usage of vim configuration
IPtables and binlog
Qt | Qt 的项目文件.pro 文件详解
QT基础第四天(4)qt事件机制:事件基础概念,常见事件机制,事件处理以及事件的重写
继续来学习有关淘宝的API接口的使用——获得店铺的所有商品 API
Basic management of system storage -- mounts, partitions, user quotas
QT | VS2017 + Qt5.14.2 环境搭建
剑指Offer 49.丑数 动态规划
Go-5-简单介绍fmt库
动态权重之多任务不平衡论文 (二) MetaBalance
Qt | 通过创建一个简单项目了解 Qt Creator
SQL学习笔记——REGEXP运算符
ROS 之 KUKA iiwa编程
24、wpf之布局(二)
太帅了!我用炫酷大屏展示爬虫数据!
管理软件开发 管理软件定制开发流程