FrameworkElement.BeginStoryboard FrameworkElement.BeginStoryboard FrameworkElement.BeginStoryboard Method

定義

指定したストーリーボードに含まれるアクションのシーケンスを開始します。

オーバーロード

BeginStoryboard(Storyboard) BeginStoryboard(Storyboard) BeginStoryboard(Storyboard)

指定したストーリーボードに含まれるアクションのシーケンスを開始します。

BeginStoryboard(Storyboard, HandoffBehavior) BeginStoryboard(Storyboard, HandoffBehavior) BeginStoryboard(Storyboard, HandoffBehavior)

プロパティが既にアニメーション化されていた場合にどうするかを指定するオプションを使用して、指定したストーリーボードに含まれるアクションのシーケンスを開始します。

BeginStoryboard(Storyboard, HandoffBehavior, Boolean) BeginStoryboard(Storyboard, HandoffBehavior, Boolean) BeginStoryboard(Storyboard, HandoffBehavior, Boolean)

開始後のアニメーションの制御の状態を指定して、指定したストーリーボードに含まれるアクションのシーケンスを開始します。

BeginStoryboard(Storyboard) BeginStoryboard(Storyboard) 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

パラメーター

storyboard
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

注釈

アニメーションの最も一般的なシナリオでは、このメソッドは使用しないでください。 通常、作成、StoryboardまたはBeginStoryboard、マークアップ内の要素を配置として、EventTrigger要素のコンテンツ。 イベントによってトリガーされると、アニメーションが実行されます。 ほとんどのコントロールの側面をStoryboardマークアップで公開されているプロパティでアドレス指定することができます。

署名を使用しない、 isControllable、パラメーター、そのパラメーターが指定されている場合またはfalseアニメーションに関連付けられているタイムラインのクロックが"Fill"期間に達するとすぐに削除されます。 そのため、アニメーションは、1 回実行した後は再開できません。 ストーリー ボードがある必要がありますもアニメーションを制御する、 X:name ディレクティブまたはコード内の参照でアクセスできるようにします。

BeginStoryboard(Storyboard, HandoffBehavior) BeginStoryboard(Storyboard, HandoffBehavior) 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

パラメーター

storyboard
Storyboard Storyboard Storyboard

開始するストーリーボード。

handoffBehavior
HandoffBehavior 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

注釈

アニメーションの最も一般的なシナリオでは、このメソッドは使用しないでください。 通常、作成、StoryboardまたはBeginStoryboard、マークアップ内の要素を配置として、EventTrigger要素のコンテンツ。 イベントによってトリガーされると、アニメーションが実行されます。 ほとんどのコントロールの側面をStoryboardマークアップで公開されているプロパティでアドレス指定することができます。

署名を使用しない、 isControllable、パラメーター、そのパラメーターが指定されている場合またはfalseアニメーションに関連付けられているタイムラインのクロックが"Fill"期間に達するとすぐに削除されます。 そのため、アニメーションは、1 回実行した後は再開できません。 ストーリー ボードがある必要がありますもアニメーションを制御する、 X:name ディレクティブまたはコード内の参照でアクセスできるようにします。

ハンドオフ動作の属性として指定できますBeginStoryboardします。

使用して、Compose HandoffBehavior

適用すると、 StoryboardAnimationTimeline、またはAnimationClockにプロパティを使用して、 Compose HandoffBehavior、anyClock以前そのプロパティに関連付けられているオブジェクトは引き続きシステム リソースを消費しますタイミング システムは。時計を自動的に削除されません。

使用して多数のクロックを適用すると、パフォーマンスの問題を回避するためにCompose、完了後に、アニメーション化されたプロパティから構成クロックを削除する必要があります。 クロックを削除するいくつかの方法はあります。

  • プロパティからすべてのクロックを削除するには、使用、ApplyAnimationClock(DependencyProperty, AnimationClock)またはBeginAnimation(DependencyProperty, AnimationTimeline)アニメーション化されたオブジェクトのメソッド。 最初のパラメーターとしてアニメーション化されているプロパティを指定し、 null 2 つ目として。 これにより、すべてのアニメーション クロックがプロパティから削除します。

  • 特定を削除するAnimationClockクロックの一覧は、使用して、Controllerのプロパティ、AnimationClockを取得する、 ClockController、呼び出して、Removeのメソッド、ClockControllerします。 これは、通常、Completedクロックのイベント ハンドラー。 唯一のルート クロックを使用して制御できることに注意してください、 ClockControllerController子クロックのプロパティを返しますnullします。 なお、Completedクロックの有効期間が永久の場合、イベントは発生しません。 その場合は、ユーザーが判断する必要がありますを呼び出すタイミングRemoveします。

これは主に、有効期間が長いオブジェクトでのアニメーションの問題です。 オブジェクトがガベージ コレクションの場合は、そのクロックも切断し、ガベージ コレクション。

クロック オブジェクトの詳細については、次を参照してください。アニメーションとタイミング システムの概要します。

BeginStoryboard(Storyboard, HandoffBehavior, Boolean) BeginStoryboard(Storyboard, HandoffBehavior, Boolean) 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

パラメーター

storyboard
Storyboard Storyboard Storyboard

開始するストーリーボード。

handoffBehavior
HandoffBehavior HandoffBehavior HandoffBehavior

ストーリーボードに記述されたプロパティが既にアニメーション化されている場合に使用する動作を表す列挙値。

isControllable
Boolean Boolean Boolean

アニメーションを起動した後に、アニメーションを制御できるかどうか (一時停止できるかどうか) を宣言します。

注釈

アニメーションの最も一般的なシナリオでは、このメソッドは使用しないでください。 通常、作成、StoryboardまたはBeginStoryboard、マークアップ内の要素を配置として、EventTrigger要素のコンテンツ。 イベントによってトリガーされると、アニメーションが実行されます。 ほとんどのコントロールの側面をStoryboardマークアップで公開されているプロパティでアドレス指定することができます。

署名を使用しない、 isControllable、パラメーター、そのパラメーターが指定されている場合またはfalseアニメーションに関連付けられているタイムラインのクロックが"Fill"期間に達するとすぐに削除されます。 そのため、アニメーションは、1 回実行した後は再開できません。 ストーリー ボードがある必要がありますもアニメーションを制御する、 X:name ディレクティブまたはコード内の参照でアクセスできるようにします。

ハンドオフ動作の属性として指定できますBeginStoryboardします。

使用して、Compose HandoffBehavior

適用すると、 StoryboardAnimationTimeline、またはAnimationClockにプロパティを使用して、 Compose HandoffBehavior、anyClock以前そのプロパティに関連付けられているオブジェクトは引き続きシステム リソースを消費しますタイミング システムは。時計を自動的に削除されません。

使用して多数のクロックを適用すると、パフォーマンスの問題を回避するためにCompose、完了後に、アニメーション化されたプロパティから構成クロックを削除する必要があります。 クロックを削除するいくつかの方法はあります。

  • プロパティからすべてのクロックを削除するには、使用、ApplyAnimationClock(DependencyProperty, AnimationClock)またはBeginAnimation(DependencyProperty, AnimationTimeline)アニメーション化されたオブジェクトのメソッド。 最初のパラメーターとしてアニメーション化されているプロパティを指定し、 null 2 つ目として。 これにより、すべてのアニメーション クロックがプロパティから削除します。

  • 特定を削除するAnimationClockクロックの一覧は、使用して、Controllerのプロパティ、AnimationClockを取得する、 ClockController、呼び出して、Removeのメソッド、ClockControllerします。 これは、通常、Completedクロックのイベント ハンドラー。 唯一のルート クロックを使用して制御できることに注意してください、 ClockControllerController子クロックのプロパティを返しますnullします。 なお、Completedクロックの有効期間が永久の場合、イベントは発生しません。 その場合は、ユーザーが判断する必要がありますを呼び出すタイミングRemoveします。

これは主に、有効期間が長いオブジェクトでのアニメーションの問題です。 オブジェクトがガベージ コレクションの場合は、そのクロックも切断し、ガベージ コレクション。

クロック オブジェクトの詳細については、次を参照してください。アニメーションとタイミング システムの概要します。

適用対象