WPF中的动画——(1)

      System.Windows.Media.Animation包含了许多看起来差不多的动画类,因为不同的数据类型要通过不同的动画类来实现动画的。

      WPF包含了22个不同的类型的内置动画类,如下表所示。

核心的.NET数据类型

WPF数据类型

Boolean

Thickness

Byte

Color

Char

Size

Decimal

Rect

Int16

Point

Int32

Point3D

Int64

Vector

Single

Vector3D

Double

Rotation3D

String

Matrix

Object

Quaternion

 

  1. 创建动画

创建动画要根据要改变的依赖属性的类型选择合适的动画类型,设定初始值、结束值以及Duration。然后将动画与要“动”的元素和元素的属性关联起来。动画类有大量的属性,它们会用一些有趣的方式来定制其行为。

  1. 线性内插

17XXXAnimation类通过线性内插来平滑地改变时间段内XXX类型值,这一点很重要,不需要我们人为地干预。值的变化也就是以初始值与结束值连线的斜率来变化。

  1. 动画的重用

完全相同的动画可以应用到多个元素,甚至是同一个元素的多个属性上。

  1. 控制持续时间

动画的时间可以通过Duration属性进行设定。如果不设定,默认值是1秒。构建一个Duration实例的方法通常是使用一个标准的TimeSpan对象,可以用FromSeconds等静态方法创建或Parse一个形如“天.时:分:秒.小数”的字符串。另外,Duration有两个TimeSpan无法表达的值:Duration.AutomaticDuration.ForeverAutomatic是任何动画类的Duration属性的默认值,等同于1秒的TimeSpanForever表示无限长时间。

  1. FromTo的灵活性

FromTo同时设定,则值在指定的时间从From变化到To,如果From和当前值不同,则会造成一定的跃变,这种值的跳跃往往会产生刺眼的效果;

只设定To,则值在指定的时间从当前值变化到To

只设定From,则值在指定的时间从From变化到当前值;

FromBy的结合,By表示变化的幅度,To = From + By

注意,ToBy不应该同时出现,如果同时出现,则By会被忽略。

posted on 2009-03-02 13:18  xirihanlin  阅读(2476)  评论(0编辑  收藏  举报