Nikhil Kothari 的基于Silverlight的动画框架 Glitz(摘要)

原文地址: http://www.nikhilk.net/Silverlight-Effects-Transitions.aspx

Nikhil Kothari 在 blog 中介绍了一个叫做 Glitz 的动画框架,之所以需要这个框架,是因为 Silverlight 中已有的 Storyboard / Visual state manager 太原始,无法简单的提供一些常用的动画效果。

效果图(不知道这里直接引用图片是否有版权问题):

 附件: 您所在的用户组无法下载或查看附件


 附件: 您所在的用户组无法下载或查看附件


该框架的实现方法和之前的 AutoComplete/ViewModel 等一样,仍然是采用了 Behavior 模式,通过 Attached Property 附加给目标元素。因为本质上动画也是一种可附加的行为。

这些动画行为分为两类: Effects(效果) 和 Transitions(过渡)。

其中 Effects 是指定给一个元素的,可以执行一些移动、淡入淡出等操作。
Effects 可以组合,利用 CompositeEffect.

而 Transitions 用于指定给一个 Panel 中的两个元素,使其出现切换效果。

不管是 Effects 或 Transitions,都支持设定动画播放的方向:向前,向后,或者向前播放后自动反转。

下面是几个语法的例子:

两个屏幕的切换过渡效果(第一个从左侧消失,第二个从右侧进入):

Code


鼠标悬停/离开的效果(动态改变目标的填充颜色):

Code


图片点击后高亮显示为黄色背景:

Code


翻转切换两幅图片:

Code


(目前这个 Behavior 框架的一个小小缺憾是不能在 Expression Blend 中正常显示。我一般是切换到 Blend 时将相关代码注释掉,尽量先用 Blend 一次性布局好了再加 Behavior)

下载地址:http://www.nikhilk.net/Content/P ... s/SilverlightFX.zip

几个效果的演示地址:
http://www.nikhilk.net/Content/P ... s/WeatherSample.htm
http://www.nikhilk.net/Content/P ... s/EffectsSample.htm

原文出处:http://www.cnblogs.com/RChen/archive/2008/07/31/1257034.html

 感谢原创者的辛勤劳动,希望对您有所帮助,转载请注明原出处。
 您可能对 [Silverlight] 的这些文章也感兴趣:

一个Silverlight多文件(大文件)上传的开源项目
在Silverlight应用程序中操作Cookie
开发Silverlight 2.0的自定义控件
Silverlight监测工具:Silverlight Spy
在Silverlight 2中实现超酷图表
Silverlight 2 Beta版的控件源代码可以下载了
使用SilverLight构建插件式应用程序(六)
什么是SilverLight
SilverLight 2.0 事件触发
使用Silverlight构建插件式应用程序(五)