我们在以前的文章中,曾经向大家介绍了有关属性触发器的一些介绍。可以知道,它是一种最常见的触发器类型。其实,WPF数据触发器和属性触发器除了面对的对象类型不一样外完全相同。#t#
创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都网站设计、成都网站制作、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的隆安网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
WPF数据触发器是来检测非依赖属性------也就是用户自定义的.NET属性-----的值发生变化时来触发并调用符合条件的一系列Setter集合。
下边的示例演示了在绑定的ListBox里如果某个User对象符合某种特点(Role=Admin),则以突出方式显示这个对象。这里就用了DataTrigger,因为WPF数据触发器需要检测的是User对象的属性Role,这个对象是自定义的非可视化对象并且其属性为普通.NET属性。
- < Page.Resources>
- < clr:Users x:Key="myUsers" />
- < DataTemplate DataType=
"{x:Type clr:User}">- < TextBlock Text="
{Binding Path=Name}"/>- < /DataTemplate>
- ...
- < /Page.Resources>
- < StackPanel>
- < ListBox Width="200"
- ItemsSource="{Binding
Source={StaticResource
myUsers}}" />- < /StackPanel>
WPF数据触发器主要的部分定义在了Style中,其针对的是每个ListBox的项,当其被绑定的数据的属性Role为Admin时,突出显示:
- < Style TargetType=
"{x:Type ListBoxItem}">- < Style.Triggers>
- < DataTrigger Binding=
"{Binding Path=Role}"
Value="Admin">- < Setter Property=
"Foreground" Value="Red" />- < /DataTrigger>
- < /Style.Triggers>
- < /Style>
本文标题:WPF数据触发器检测非依赖属性
浏览路径:http://www.mswzjz.cn/qtweb/news34/218484.html
攀枝花网站建设、攀枝花网站运维推广公司-贝锐智能,是专注品牌与效果的网络营销公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 贝锐智能