BeginStoryboard.HandoffBehavior プロパティ

定義

このストーリー ボードのアニメーション クロックを開始するための適切なハンドオフ動作を取得または設定します。

public:
 property System::Windows::Media::Animation::HandoffBehavior HandoffBehavior { System::Windows::Media::Animation::HandoffBehavior get(); void set(System::Windows::Media::Animation::HandoffBehavior value); };
public System.Windows.Media.Animation.HandoffBehavior HandoffBehavior { get; set; }
member this.HandoffBehavior : System.Windows.Media.Animation.HandoffBehavior with get, set
Public Property HandoffBehavior As HandoffBehavior

プロパティ値

HandoffBehavior 列挙値のいずれか。 既定値は SnapshotAndReplace です。

注釈

Compose HandoffBehavior の使用

を使用ClockHandoffBehavior.Composeして プロパティに 、AnimationTimeline、または AnimationClock を適用Storyboardすると、そのプロパティに以前に関連付けられたオブジェクトはシステム リソースを消費し続けます。タイミング システムはこれらのクロックを自動的に削除しません。

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

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

  • 特定の AnimationClock をクロックの一覧から削除するには、AnimationClockController プロパティを使用して ClockControllerを取得し、次に RemoveClockController メソッドを呼び出します。 これは通常、クロックの Completed イベント ハンドラーで実行されます。 によって制御ClockControllerControllerできるのはルート クロックのみです。子クロックの プロパティは を返しますnull。 また、クロックの Completed 有効期間が永遠である場合、イベントは呼び出されないことに注意してください。 その場合、ユーザーは を呼び出す Removeタイミングを決定する必要があります。

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

クロック オブジェクトについて詳しくは、「アニメーションとタイミング システムの概要」をご覧ください。

適用対象