WPF中的触发器简单总结

本文介绍了WPF中的三种触发器:属性触发器(Property Trigger)、数据触发器(Data Trigger)和事件触发器(Event Trigger)。属性触发器在依赖属性值改变时执行,常用于数据验证;数据触发器检测用户自定义.NET属性变化;事件触发器则在特定事件发生时触发。此外,还提到了MultiDataTrigger和MultiTrigger用于处理多个条件的触发场景。
摘要由CSDN通过智能技术生成

触发器,从某种意义上来说它也是一种Style,因为它包含有一个Setter集合,并根据一个或多个条件执行Setter中的属性改变。因为复用的缘故,Styles是放置触发器的最好位置。但对于每个FrameworkElement来说都有Triggers集合,你也可以放在Triggers集合里。触发器有三种类型:

  属性触发器Property Trigger:当Dependency Property的值发生改变时触发。
  数据触发器Data Trigger:当普通.NET属性的值发生改变时触发。
  事件触发器Event Trigger:当路由时间被触发时调用

1.      属性触发器(Property Trigger)
属性触发器是WPF中最常用的触发器类型,因为我们前边说过依赖属性具有垂直变更通知的功能,所以在使用属性触发器时会很方便,而且因为WPF中每个控件超过2/3的属性都是依赖属性,所以它用到的场合更多。属性触发器是在当某个依赖属性的值发生变化时触发执行一个Setter的集合,当属性失去这个值时,这些被触发执行的Setter集合会自动被撤销

例如:注意,属性触发器是用Trigger标识的

        <Trigger Property="IsMouseOver" Value="true">
              <Setter Property="Cursor" Value="Hand" />
        </Trigger>
        <Trigger Property="IsSelected" Value="true">
              <Setter TargetName="brdbutton"
                      Property="Background"
                      Value="{StaticResource TabRedBrush}" />
         </Trigger>

属性触发器还经常被用在做数据验证时用来显示验证错误信息。在WPF学习之绑定里的Validation部分我们附有用属性触发器来判断是否有验证错误并显示相应验证错误信息的示例

<TextBox Style="{StaticResource validateTextBoxStyle}">
   <TextBox.Text>

       <Binding UpdateSourceTrigger="PropertyChanged" Path&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值