WPF常用TriggerAction用法 (一)
Microsoft.Expression.Interactivity 常用TriggerAction-> CallMethodAction ChangePropertyAction ControlStoryboardAction GoToStateAction

1,CallMethodAction 用于调用后台和DataContext中公用,无参数,无返回值的方法.这里扩展了一个CallMethodTrigger 可以调用有返回值和参数的方法。xaml中使用方法:
<Button Background="{StaticResource TabItemSelectedBackground}" Height="" MinWidth="" Content="CallMethodFromCode" Padding="10 0">
<i:Interaction.Triggers>
<i:EventTrigger EventName="Click">
<ei:CallMethodAction MethodName="MethodFromCode" TargetObject="{Binding RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=Window}}"/>
<ei:CallMethodAction MethodName="MethodFromCode" TargetObject="{Binding ElementName=window}"/>
</i:EventTrigger>
</i:Interaction.Triggers>
</Button>
2,ChangePropertyAction 用于更改界面元素的属性和后台代码公开属性。界面元素属性一般要求为依赖属性。(附加属性也可。)xaml中使用方法:
<ToggleButton Background="Orange" Height="" MinWidth="" Content="ChangeElementProperty" Padding="10 0">
<i:Interaction.Triggers>
<i:EventTrigger EventName="Checked">
<ei:ChangePropertyAction TargetName="br" PropertyName="Background" Value="orange"/>
<ei:ChangePropertyAction TargetName="tb" PropertyName="Text" Value="orange"/>
</i:EventTrigger>
<i:EventTrigger EventName="Unchecked">
<ei:ChangePropertyAction TargetName="br" PropertyName="Background" Value="Red"/>
<ei:ChangePropertyAction TargetName="tb" PropertyName="Text" Value="Red"/>
</i:EventTrigger>
</i:Interaction.Triggers>
</ToggleButton>
3,ControlStoryboardAction用于界面控制可访问动画的播放暂停等操作。xaml中使用方法:
<Button Background="{StaticResource TabItemSelectedBackground}" Height="40" MinWidth="80" Content="ControlStoryboard Pause" Margin="10 0 0 0" Padding="10 0">
<i:Interaction.Triggers>
<i:EventTrigger EventName="Click">
<ei:ControlStoryboardAction ControlStoryboardOption="Pause" Storyboard="{StaticResource ChnageWidth1}"></ei:ControlStoryboardAction>
</i:EventTrigger>
</i:Interaction.Triggers>
</Button>
4,GoToStateAction 切换可访问的两个VisulState 可视化的状态,一般也通过动画实现。xaml中使用方法:
<ToggleButton Background="Orange" Margin="0 0 10 0" Height="" MinWidth="" Content="GoToState" Padding="10 0">
<i:Interaction.Triggers>
<i:EventTrigger EventName="Checked">
<ei:GoToStateAction StateName="ClickState" UseTransitions="{Binding UseTransitions}"/>
</i:EventTrigger>
<i:EventTrigger EventName="Unchecked">
<ei:GoToStateAction StateName="NormalState" />
</i:EventTrigger>
</i:Interaction.Triggers>
</ToggleButton>
下载 https://files.cnblogs.com/files/yk250/BlendBehaviorsDemo.rar
WPF常用TriggerAction用法 (一)的更多相关文章
- 【基于WPF+OneNote+Oracle的中文图片识别系统阶段总结】之篇一:WPF常用知识以及本项目设计总结
篇一:WPF常用知识以及本项目设计总结:http://www.cnblogs.com/baiboy/p/wpf.html 篇二:基于OneNote难点突破和批量识别:http://www.cnblog ...
- [转]jQuery的each方法的几种常用的用法
下面提一下jQuery的each方法的几种常用的用法 复制代码 代码如下: var arr = [ "one", "two", "three&quo ...
- WPF常用控件应用demo
WPF常用控件应用demo 一.Demo 1.Demo截图如下: 2.demo实现过程 总体布局:因放大缩小窗体,控件很根据空间是否足够改变布局,故用WrapPanel布局. <ScrollVi ...
- python笔记之常用模块用法分析
python笔记之常用模块用法分析 内置模块(不用import就可以直接使用) 常用内置函数 help(obj) 在线帮助, obj可是任何类型 callable(obj) 查看一个obj是不是可以像 ...
- WPF常用转换
原文 WPF常用转换 以下是代码中常常用到的一些转换,整理如下,后续再不断完善: 1.string和Color的转换 //string转Color (Color)ColorConverter.Conv ...
- ansible常用模块用法
ansible常用模块用法 2015-07-21 10:25 24458人阅读 评论(1) 收藏 举报 分类: Linux(44) ansible 版权声明:本文为博主原创文章,未经博主允许不得 ...
- WPF DevExpress ChartControl用法
WPF常用的第三方控件集,DevExpress中ChartControl的使用 下面介绍如何生成Chart界面: <dxc:ChartControl AnimationMode="On ...
- Anaconda中常用的用法
Anaconda中常用的用法 conda 是开源包(packages)和虚拟环境(environment)的管理系统. packages 管理: 可以使用 conda 来安装.更新 .卸载工具包 ,并 ...
- HTML常用标签用法及实例
HTML常用标签用法及实例1.<!--1.注释-->2.<!--2.DOCTPYE 声明文档类型-->3.<!--3.a--> <a href="h ...
随机推荐
- final、finally、以及finalize的区别
final ---修饰类.变量和方法,修饰的类不能被继承 .修饰的方法不能被重写 .修饰的成员变量不可更改 另外,修饰成员变量必须立即赋值,修饰局部变量使用之前被赋值就可以. finally通常和tr ...
- IntelliJ IDEA 实用快捷键
psvm--------------主(main)-----------------public staitc void main(String[] args) sout--------------- ...
- web爬虫,BeautifulSoup
BeautifulSoup 该模块用于接收一个HTML或XML字符串,然后将其进行格式化,之后遍可以使用他提供的方法进行快速查找指定元素,从而使得在HTML或XML中查找指定元素变得简单. 1 2 3 ...
- CSS 关于权重的另类解说
众所周知,对于CSS中权重的顺序,从大到小依次如下: !important id class 标签 在html标签中写入行内样式style,又大于link引入.相同类型的样式标记,在数量上多的大于数量 ...
- Mac使用
安装you-get: 用到mac下安装软件的工具:brew 百度搜brew到官网首页照说明在终端执行一段指令 安装方法:命令行输入 /usr/bin/ruby -e "$(curl -fsS ...
- Netty中的基本组件及关系
原文:https://blog.csdn.net/summerZBH123/article/details/79344226--------------------- 概述 这篇文章主要是用来 ...
- cout设置输出数据不显示科学计数法
[解决方案] 1.在头文件包含—#include<iomanip>——定义IO流输出输入格式控制相关函数. 2.利用cout输出格式为—cout << fixed <&l ...
- linux 服务器命令
sudo apt-get update sudo apt-get install sudo passwd 123456 设置root密码 su root 切换root用户 netstat -anlp ...
- 使用OwnCloud搭建自己的云盘
使用OwnCloud搭建自己的云盘 1.用途 ownCloud是一款开源的私有云框架,可以通过它实现个人网盘的功能,ownCloud提供了各个平台的文件同步客户端,因此搭建好ownCloud之后即可使 ...
- GDI与GDI+性能比较
编写程序对GDI和GDI+绘制进行了比较,经过比较,GDI相对GDI+还是有一些性能优势的. 同时比较了每次绘制创建TGPGraphics对象和共用一个TGPGraphics对象的情况,两者性能相差不 ...