Silverlight 3 创建一个简单的Behavior
ilverlight 3 创建一个简单的Behavior
最近一直在研究Silverlight 3,并同时用3的新特性来做一些演练,期间学到了不少新东西该倒了总结一下的时候了。
在开发一个demo的过程中我采用了MVVM的开发模式,这个模式能很方便的直接使用blend来做数据的绑定,但是对一些Event、事件的触发来实现相对应的动画效果就比较复杂,刚开始一直想用数据绑定的方式来绑定Event,最终发现绑定按钮的点击事件比较方便,但是绑定别的比如MouseEnter、MouseMove等的事件就相对复杂麻烦了,这时突然想起Behavior才眼前一亮发现自己走了弯路。
这里有一篇我对Behavior的介绍
http://www.cnblogs.com/nasa/archive/2009/03/23/silverlight-3-behaviors.html
进入正题,这里我要介绍的是如何来做一个最简单的Behavior
创建一个能把所有输入的大写字母转化为小写字母的Behavior
创建好项目
制作简单的界面一个TextBox一个Button
好下来开始做Behavior了
用VS打开项目,新建一个Behavior文件夹
在文件夹下创建一个UpperToLowerBehavior类 并继承自TargetedTriggerAction
代码如下:
using System; using System.Windows.Interactivity; using System.Windows; using System.Windows.Controls; namespace SimpleBehavior.Behavior { public class UpperToLowerBehavior : TargetedTriggerAction { protected override void Invoke(object parameter) { if (Target is TextBox) { (Target as TextBox).Text = (Target as TextBox).Text.ToLower(); } } } }
简单的判断一下目标的类型,若是TextBox就将其内的字母转换为小写。
这样再回到Blend中,Ctrl+shift+b 快捷键编译一下项目就会在资源视图中看到刚刚创建的Behavior。
将其拖拽到Button上,并设计其属性如下
F5运行
- LINQ to XML LINQ学习第一篇
- PHP 安全与性能
- Extjs 项目中常用的小技巧,也许你用得着(5)--设置 Ext.data.Store 传参的请求方式
- WPF备忘录(5)怎样修改模板中的控件
- Linux 系统与数据库安全
- 使用委托实现同步回调与异步回调
- Application Firewall Design
- Extjs 项目中常用的小技巧,也许你用得着(4)---Extjs 中的cookie设置
- C#基础知识回顾--串行化与反串行化
- Shell实用实例参考
- 数据库记录安全解决方案
- 多客服功能终于也向所有微信认证的订阅号开放了
- WPF备忘录(4)打个勾画个叉娱乐下
- Linux Token Auth 一次性密码认证
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法