UIElement.BeginAnimation 方法

定义

为此元素的指定要进行动画处理的属性启动动画。

重载

BeginAnimation(DependencyProperty, AnimationTimeline)

为此元素的指定要进行动画处理的属性启动动画。

BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior)

为此元素的指定要进行动画处理的属性启动特定的动画,并可以指定当该属性已有正在运行的动画时所要执行的操作。

BeginAnimation(DependencyProperty, AnimationTimeline)

为此元素的指定要进行动画处理的属性启动动画。

public:
 virtual void BeginAnimation(System::Windows::DependencyProperty ^ dp, System::Windows::Media::Animation::AnimationTimeline ^ animation);
public void BeginAnimation (System.Windows.DependencyProperty dp, System.Windows.Media.Animation.AnimationTimeline animation);
abstract member BeginAnimation : System.Windows.DependencyProperty * System.Windows.Media.Animation.AnimationTimeline -> unit
override this.BeginAnimation : System.Windows.DependencyProperty * System.Windows.Media.Animation.AnimationTimeline -> unit
Public Sub BeginAnimation (dp As DependencyProperty, animation As AnimationTimeline)

参数

dp
DependencyProperty

要进行动画处理的属性,它被指定为依赖项属性标识符。

animation
AnimationTimeline

要启动的动画的时间线。

实现

示例

以下示例创建一个动画,分配它,然后调用 BeginAnimation 来启动它。

// Animate the button's width.
DoubleAnimation widthAnimation = 
    new DoubleAnimation(120, 300, TimeSpan.FromSeconds(5));
widthAnimation.RepeatBehavior = RepeatBehavior.Forever;
widthAnimation.AutoReverse = true;
animatedButton.BeginAnimation(Button.WidthProperty, widthAnimation);
' Animate the button's width.
Dim widthAnimation As New DoubleAnimation(120, 300, TimeSpan.FromSeconds(5))
widthAnimation.RepeatBehavior = RepeatBehavior.Forever
widthAnimation.AutoReverse = True
animatedButton.BeginAnimation(Button.WidthProperty, widthAnimation)

注解

检查属性是否为动画时,请注意,当呈现非动画起始点以外的第一帧时,动画将开始并被视为动画。

BeginTime如果 的 animationnull,则删除所有当前动画,并保留 属性的当前值。

如果整个 animation 值为 null,则会从 属性中删除所有动画,并且属性值将恢复为其基值。 但是,最初关联的动画时间线不会停止。 分配给该时间线的任何其他动画将继续运行。

适用于

BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior)

为此元素的指定要进行动画处理的属性启动特定的动画,并可以指定当该属性已有正在运行的动画时所要执行的操作。

public:
 virtual void BeginAnimation(System::Windows::DependencyProperty ^ dp, System::Windows::Media::Animation::AnimationTimeline ^ animation, System::Windows::Media::Animation::HandoffBehavior handoffBehavior);
public void BeginAnimation (System.Windows.DependencyProperty dp, System.Windows.Media.Animation.AnimationTimeline animation, System.Windows.Media.Animation.HandoffBehavior handoffBehavior);
abstract member BeginAnimation : System.Windows.DependencyProperty * System.Windows.Media.Animation.AnimationTimeline * System.Windows.Media.Animation.HandoffBehavior -> unit
override this.BeginAnimation : System.Windows.DependencyProperty * System.Windows.Media.Animation.AnimationTimeline * System.Windows.Media.Animation.HandoffBehavior -> unit
Public Sub BeginAnimation (dp As DependencyProperty, animation As AnimationTimeline, handoffBehavior As HandoffBehavior)

参数

dp
DependencyProperty

要进行动画处理的属性,它被指定为依赖项属性标识符。

animation
AnimationTimeline

要应用的动画的时间线。

handoffBehavior
HandoffBehavior

一个枚举值,用来指定新动画如何与已在影响属性值的任何当前(正在运行的)动画进行交互。

实现

示例

以下示例实现一个处理程序,该处理程序从资源获取现有动画,然后使用指定的切换行为调用 BeginAnimation

private void myFrameNavigated(object sender, NavigationEventArgs args)
{
    DoubleAnimation myFadeInAnimation = (DoubleAnimation)this.Resources["MyFadeInAnimationResource"];
    myFrame.BeginAnimation(Frame.OpacityProperty, myFadeInAnimation, HandoffBehavior.SnapshotAndReplace);
}
Private Sub myFrameNavigated(ByVal sender As Object, ByVal args As NavigationEventArgs)
    Dim myFadeInAnimation As DoubleAnimation = CType(Me.Resources("MyFadeInAnimationResource"), DoubleAnimation)
    myFrame.BeginAnimation(Frame.OpacityProperty, myFadeInAnimation, HandoffBehavior.SnapshotAndReplace)
End Sub

注解

检查属性是否为动画时,请注意,当呈现非动画起始点以外的第一帧时,动画将开始并被视为动画。

BeginTime如果 的 animationnull,则删除所有当前动画,并保留 属性的当前值。

如果整个 animation 值为 null,则会从 属性中删除所有动画,并且属性值将恢复为其基值。 但是,最初关联的动画时间线不会停止。 分配给该时间线的任何其他动画将继续运行。

适用于