FrameworkElement.BeginStoryboard 方法

定义

开始提供情节提要中包含的操作序列。

重载

BeginStoryboard(Storyboard)

开始提供情节提要中包含的操作序列。

BeginStoryboard(Storyboard, HandoffBehavior)

开始提供的情节提要中包含的操作序列,其中为属性已创建动画时应发生的情况指定选项。

BeginStoryboard(Storyboard, HandoffBehavior, Boolean)

开始提供情节提要中包含的操作序列,并在动画启动后指定状态控制动画。

BeginStoryboard(Storyboard)

开始提供情节提要中包含的操作序列。

public:
 void BeginStoryboard(System::Windows::Media::Animation::Storyboard ^ storyboard);
public void BeginStoryboard (System.Windows.Media.Animation.Storyboard storyboard);
member this.BeginStoryboard : System.Windows.Media.Animation.Storyboard -> unit
Public Sub BeginStoryboard (storyboard As Storyboard)

参数

storyboard
Storyboard

要开始的情节提要。

示例

以下示例从资源检索 Storyboard,然后在处理内部事件时运行该 Storyboard

private void OnImage1Animate(object sender, RoutedEventArgs e)
{
    Storyboard s;

    s = (Storyboard)this.FindResource("RotateStoryboard");
    this.BeginStoryboard(s);
}
Private Sub OnImage1Animate(ByVal sender As Object, ByVal e As RoutedEventArgs)
    Dim s As Storyboard

    s = CType(Me.FindResource("RotateStoryboard"), Storyboard)
    Me.BeginStoryboard(s)
End Sub

注解

大多数典型的动画方案不使用此方法。 通常,在标记中创建 StoryboardBeginStoryboard 元素,然后将这些元素作为 EventTrigger 内容放置在元素上。 当事件触发时,动画将运行。 Storyboard 的大多数控件方面都可以由标记中公开的属性来解决。

对于不使用 isControllable、参数或指定该参数 false的签名,动画到达“填充”期间后,将立即删除与动画关联的时间线时钟。 因此,动画在运行一次后无法重新启动。 控制动画还要求情节提要具有 x:Name 指令 或可通过代码中的引用访问。

适用于

BeginStoryboard(Storyboard, HandoffBehavior)

开始提供的情节提要中包含的操作序列,其中为属性已创建动画时应发生的情况指定选项。

public:
 void BeginStoryboard(System::Windows::Media::Animation::Storyboard ^ storyboard, System::Windows::Media::Animation::HandoffBehavior handoffBehavior);
public void BeginStoryboard (System.Windows.Media.Animation.Storyboard storyboard, System.Windows.Media.Animation.HandoffBehavior handoffBehavior);
member this.BeginStoryboard : System.Windows.Media.Animation.Storyboard * System.Windows.Media.Animation.HandoffBehavior -> unit
Public Sub BeginStoryboard (storyboard As Storyboard, handoffBehavior As HandoffBehavior)

参数

storyboard
Storyboard

要开始的情节提要。

handoffBehavior
HandoffBehavior

描述在情节提要中描述的属性已进行动画处理时要使用的行为的枚举值。

示例

以下示例从资源检索 Storyboard,然后在处理内部事件时运行该 Storyboard

private void OnImage1Animate(object sender, RoutedEventArgs e)
{
    Storyboard s;

    s = (Storyboard)this.FindResource("RotateStoryboard");
    this.BeginStoryboard(s);
}
Private Sub OnImage1Animate(ByVal sender As Object, ByVal e As RoutedEventArgs)
    Dim s As Storyboard

    s = CType(Me.FindResource("RotateStoryboard"), Storyboard)
    Me.BeginStoryboard(s)
End Sub

注解

大多数典型的动画方案不使用此方法。 通常,在标记中创建 StoryboardBeginStoryboard 元素,然后将这些元素作为 EventTrigger 内容放置在元素上。 当事件触发时,动画将运行。 Storyboard 的大多数控件方面都可以由标记中公开的属性来解决。

对于不使用 isControllable、参数或指定该参数 false的签名,动画到达“填充”期间后,将立即删除与动画关联的时间线时钟。 因此,动画在运行一次后无法重新启动。 控制动画还要求情节提要具有 x:Name 指令 或可通过代码中的引用访问。

交接行为可以指定为 BeginStoryboard的属性。

使用 Compose HandoffBehavior

使用 ComposeHandoffBehaviorStoryboardAnimationTimelineAnimationClock 应用于属性时,以前与该属性关联的任何 Clock 对象将继续使用系统资源;计时系统不会自动删除时钟。

若要避免使用 Compose应用大量时钟时出现性能问题,应在动画属性完成后从动画属性中删除撰写时钟。 可通过多种方式删除时钟:

这主要是对生存期较长的对象进行动画的问题。 当对象被垃圾回收时,其时钟也会断开连接并回收垃圾。

有关时钟对象的详细信息,请参阅 动画和计时系统概述

适用于

BeginStoryboard(Storyboard, HandoffBehavior, Boolean)

开始提供情节提要中包含的操作序列,并在动画启动后指定状态控制动画。

public:
 void BeginStoryboard(System::Windows::Media::Animation::Storyboard ^ storyboard, System::Windows::Media::Animation::HandoffBehavior handoffBehavior, bool isControllable);
public void BeginStoryboard (System.Windows.Media.Animation.Storyboard storyboard, System.Windows.Media.Animation.HandoffBehavior handoffBehavior, bool isControllable);
member this.BeginStoryboard : System.Windows.Media.Animation.Storyboard * System.Windows.Media.Animation.HandoffBehavior * bool -> unit
Public Sub BeginStoryboard (storyboard As Storyboard, handoffBehavior As HandoffBehavior, isControllable As Boolean)

参数

storyboard
Storyboard

要开始的情节提要。

handoffBehavior
HandoffBehavior

描述在情节提要中描述的属性已进行动画处理时要使用的行为的枚举值。

isControllable
Boolean

声明动画在启动后是否可控制(可暂停)。

注解

大多数典型的动画方案不使用此方法。 通常,在标记中创建 StoryboardBeginStoryboard 元素,然后将这些元素作为 EventTrigger 内容放置在元素上。 当事件触发时,动画将运行。 Storyboard 的大多数控件方面都可以由标记中公开的属性来解决。

对于不使用 isControllable、参数或指定该参数 false的签名,动画到达“填充”期间后,将立即删除与动画关联的时间线时钟。 因此,动画在运行一次后无法重新启动。 控制动画还要求情节提要具有 x:Name 指令 或可通过代码中的引用访问。

交接行为可以指定为 BeginStoryboard的属性。

使用 Compose HandoffBehavior

使用 ComposeHandoffBehaviorStoryboardAnimationTimelineAnimationClock 应用于属性时,以前与该属性关联的任何 Clock 对象将继续使用系统资源;计时系统不会自动删除时钟。

若要避免使用 Compose应用大量时钟时出现性能问题,应在动画属性完成后从动画属性中删除撰写时钟。 可通过多种方式删除时钟:

这主要是对生存期较长的对象进行动画的问题。 当对象被垃圾回收时,其时钟也会断开连接并回收垃圾。

有关时钟对象的详细信息,请参阅 动画和计时系统概述

适用于