PowerEase 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
表示缓动函数,该函数使用公式 f(t) = tp 创建加速和/或减速的动画,其中 p 等于 Power 属性。
public ref class PowerEase : System::Windows::Media::Animation::EasingFunctionBase
public class PowerEase : System.Windows.Media.Animation.EasingFunctionBase
type PowerEase = class
inherit EasingFunctionBase
Public Class PowerEase
Inherits EasingFunctionBase
- 继承
示例
以下示例将属性值为 Power 的20
缓动函数应用于 PowerEase ,DoubleAnimation以创建减速动画。
Power由于该值太高,因此,如果使用较低的值,则减速是突然的。
<Rectangle Name="myRectangle" Width="200" Height="30" Fill="Blue">
<Rectangle.Triggers>
<EventTrigger RoutedEvent="Rectangle.MouseDown">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation From="30" To="200" Duration="00:00:3"
Storyboard.TargetName="myRectangle"
Storyboard.TargetProperty="Height">
<DoubleAnimation.EasingFunction>
<PowerEase Power="20" EasingMode="EaseOut"/>
</DoubleAnimation.EasingFunction>
</DoubleAnimation>
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Rectangle.Triggers>
</Rectangle>
注解
可以通过指定 EasingMode来控制动画是加速和/或减速。 下图演示 了 的不同值 EasingMode,其中 f (t) 表示动画进度, t 表示时间。
通过使用 PowerEase 函数,可以通过指定 属性来指定 Power 加速/减速的发生速度:
f (t) = tp ,其中 p
等于 Power 属性。
因此, PowerEase 函数可以替换为 QuadraticEase (f (t) = t2) , CubicEase (f (t) = t3) , QuarticEase (f (t) = t4) , QuinticEase (f (t) = t5) 。 例如,如果要使用 PowerEase 函数创建与函数相同的行为 QuadraticEase , (f (t) = t2) ,则可以将属性值指定为 Power 2。
除了 PowerEase之外,还有其他几个缓动函数。 除了使用包含在运行时中的缓动函数,还可以通过从 EasingFunctionBase 继承来创建自己的自定义缓动函数。
XAML 对象元素用法
<PowerEase .../>
构造函数
PowerEase() |
初始化 PowerEase 类的新实例。 |
字段
PowerProperty |
标识 Power 依赖项属性。 |
属性
CanFreeze |
获取一个值,该值指示是否可将对象变为不可修改。 (继承自 Freezable) |
DependencyObjectType |
获取 DependencyObjectType 包装此实例的 CLR 类型的 。 (继承自 DependencyObject) |
Dispatcher |
获取与此 Dispatcher 关联的 DispatcherObject。 (继承自 DispatcherObject) |
EasingMode |
获取或设置用于指定动画内插方式的值。 (继承自 EasingFunctionBase) |
IsFrozen |
获取一个值,该值指示对象当前是否可修改。 (继承自 Freezable) |
IsSealed |
获取一个值,该值指示此实例当前是否为密封的(只读)。 (继承自 DependencyObject) |
Power |
获取或设置动画内插的指数幂。 例如,值为 7 将创建遵循方程式 f(t) = t7 的动画内插曲线。 |
方法
事件
Changed |
在修改 Freezable 或其包含的对象时发生。 (继承自 Freezable) |