WPF中触发器(Trigger、DataTrigger)使用动画最简单的方式EnterActions和ExitsActions
2017-03-03 14:55
417 查看
1.当鼠标移入后执行某个动画:
View Code
**特别注意:
由于EventTrigger本身就是路由事件触发器,路由事件可以通过VS查阅API获得,
查询的方式,如:
Button通过F12看到按钮的公开代码,Button自身没有RoutedEvent,然后查询其父类ButtonBase,有一个ClickEvent;
再查询ButtonBase的父类ContentControl...一直到UIElement类,你就会发现很多RoutedEvent。
EnterActions和ExitActions不能用于EventTrigger,否则会报错Event triggers do not support EnterActions or ExitActions.
<DataTrigger Binding="{Binding Tag,RelativeSource={RelativeSource Self},Converter={StaticResource DictionaryConverter},ConverterParameter=Type}" Value="Scan"> <DataTrigger.EnterActions> <BeginStoryboard> <Storyboard RepeatBehavior="Forever" x:Name="leftRightSB"> <DoubleAnimation Storyboard.TargetName="tt" Storyboard.TargetProperty="(TranslateTransform.X)" From="0" To="10" Duration="0:0:0.3" BeginTime="0:0:0.0"/> <DoubleAnimation Storyboard.TargetName="tt" Storyboard.TargetProperty="(TranslateTransform.X)" From="10" To="0" Duration="0:0:0.3" BeginTime="0:0:0.3"/> <DoubleAnimation Storyboard.TargetName="tt" Storyboard.TargetProperty="(TranslateTransform.X)" From="0" To="-10" Duration="0:0:0.3" BeginTime="0:0:0.6"/> <DoubleAnimation Storyboard.TargetName="tt" Storyboard.TargetProperty="(TranslateTransform.X)" From="-10" To="0" Duration="0:0:0.3" BeginTime="0:0:0.9 "/> </Storyboard> </BeginStoryboard> </DataTrigger.EnterActions> <DataTrigger.ExitActions> <BeginStoryboard> <Storyboard RepeatBehavior="Forever"> <DoubleAnimation Storyboard.TargetName="tt" Storyboard.TargetProperty="(TranslateTransform.Y)" To="0" Duration="0:0:0.01"/> </Storyboard> </BeginStoryboard> </DataTrigger.ExitActions> </DataTrigger>
View Code
**特别注意:
由于EventTrigger本身就是路由事件触发器,路由事件可以通过VS查阅API获得,
查询的方式,如:
Button通过F12看到按钮的公开代码,Button自身没有RoutedEvent,然后查询其父类ButtonBase,有一个ClickEvent;
再查询ButtonBase的父类ContentControl...一直到UIElement类,你就会发现很多RoutedEvent。
EnterActions和ExitActions不能用于EventTrigger,否则会报错Event triggers do not support EnterActions or ExitActions.
相关文章推荐
- [转载]WPF中触发器Trigger、MultiTrigger、DataTrigger、MultiDataTrigger、EventTrigger几种
- 在 unity 中使用三种简单的方式实现实时时钟动画
- WPF 触发器(根据属性使用动画)
- wpf简单例子:以圆的方式展开和收起动画
- WPF触发器(Trigger、DataTrigger、EventTrigger)
- WPF – 使用触发器
- 通过编码方式使用性能计数器来进行性能计数的一个简单例子 - ZT
- 使用timer控件演示简单动画程序
- 触发器的简单使用
- 使用类库方式做简单的webpart
- C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(三十五)地图编辑器的初步使用
- 通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100
- JBoss下使用标注方式写的一个简单web service 测试
- mssql:t-sql;创建表;给表添加约束;使用变量;事务,索引,视图;存储过程;触发器trigger;播放器http://www.smartgz.com/blog/Article/956.asp
- 数据库触发器(Trigger)的一点使用心得
- 触发器的简单使用(使用游标多行更新)
- C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(三十五)地图编辑器的初步使用
- C#使用命令行方式实现Ping简单功能 http://www.cnblogs.com/kevinton/archive/2007/06/28/798581.html
- 一个使用面向对象方式编写的简单游戏框架
- Spring集成JSF的最简单方式是使用DelegatingVariableResolver类