次の方法で共有


CompositionCommitBatch クラス

定義

アクティブなアニメーションまたは効果のグループ。

public ref class CompositionCommitBatch sealed : CompositionObject
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 131072)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class CompositionCommitBatch final : CompositionObject
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 131072)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class CompositionCommitBatch : CompositionObject
Public NotInheritable Class CompositionCommitBatch
Inherits CompositionObject
継承
Object Platform::Object IInspectable CompositionObject CompositionCommitBatch
属性

Windows の要件

デバイス ファミリ
Windows 10 (10.0.10586.0 で導入)
API contract
Windows.Foundation.UniversalApiContract (v2.0 で導入)

バッチのコミット

private void UsingCommitBatch()
{
  //Create Scoped batch for animations
  CompositionCommitBatch batch =  Compositor.GetCommitBatch(CompositionBatchTypes.Animation);

  //Setup completion event 
  batch.Completed += CommitBatchCompleted;

  //Setup animations
  Animation1(_target);
}

// Creates and defines the key frame animation 
private void Animation1(Visual targetVisual)
{
  var animation1 = _compositor.CreateVector3KeyFrameAnimation();

  animation1.InsertKeyFrame(0.0f, new Vector3(100.00f, 100.00f, 0.00f));
  animation1.InsertKeyFrame(0.5f, new Vector3(300.00f, 100.00f, 0.00f));
  animation1.InsertKeyFrame(1.0f, new Vector3(500.00f, 100.00f, 0.00f));

  animation1.Duration = TimeSpan.FromMilliseconds(2000);
  targetVisual.StartAnimation("Offset", animation1);
}

public void CommitBatchCompleted(object sender, CompositionBatchCompletedEventArgs args)
{
  _root.Children.Remove(_target);
}      

注釈

アクティブなアニメーションまたは効果のグループを表し、グループのすべてのメンバーが完了したときにコールバックをトリガーします。 CompositionCommitBatch は暗黙的に作成されますが、完了したイベントを宣言するために取得する必要があります。 コミット バッチは、各コミット サイクルの最後に暗黙的に閉じられます。

アニメーション バッチの種類の場合、バッチ内で最も長いアニメーションの遅延と継続時間の組み合わせが経過すると、コールバックがトリガーされます。 効果 バッチの種類の場合、バッチ内のすべての効果の処理が完了すると、コールバックがトリガーされます。

現在のコミット バッチは、コミット サイクル中にいつでも Compositor.GetCommitBatch を呼び出すことによって取得できます。 コミット サイクルは、コンポジターからの更新間の時間として定義されています。 更新は、システムが、変更を処理してビットを画面に描画する準備ができるまでキューに配置されます。 コミット バッチは、 GetCommitBatch が呼び出された前後のコミット サイクル内のすべてのオブジェクトを集計します。   Commit バッチは、コンポジション スレッド (コンポジターが作成されるスレッド) に暗黙的に作成されます。 コンポジターはスレッドごとに 1 つしか存在しないため、スレッドごとにコミット バッチは 1 つだけです。 完了したイベントを宣言するには、コミット バッチを取得する必要があります。 コミット バッチは、各コミット サイクルの最後に暗黙的に閉じられ、中断または再開することはできません。これにより、試行されるとエラーが発生します。

コンポジション バッチの詳細については、「 コンポジション アニメーションの概要 」を参照してください。

プロパティ

Comment

CompositionObject に関連付ける文字列。

(継承元 CompositionObject)
Compositor

この CompositionObject の作成に使用するコンポジター

(継承元 CompositionObject)
Dispatcher

CompositionObject のディスパッチャー。

(継承元 CompositionObject)
DispatcherQueue

CompostionObject の DispatcherQueue を取得します。

(継承元 CompositionObject)
ImplicitAnimations

このオブジェクトにアタッチされている暗黙的なアニメーションのコレクション。

(継承元 CompositionObject)
IsActive

集計するオブジェクトに 対して CompositionCommitBatch が現在開かれているかどうかを示します。

IsEnded

CompositionCommitBatch が閉じられ、変更を受け入れなくなったかどうかを示します。

Properties

CompositionObject に関連付けられているプロパティのコレクション。

(継承元 CompositionObject)

メソッド

Close()

CompositionObject を閉じ、システム リソースを解放します。

(継承元 CompositionObject)
ConnectAnimation(String, CompositionAnimation)

接続とアニメーション。

(継承元 CompositionObject)
DisconnectAnimation(String)

アニメーションを切断します。

(継承元 CompositionObject)
Dispose()

アンマネージ リソースの解放またはリセットに関連付けられているアプリケーション定義のタスクを実行します。

(継承元 CompositionObject)
PopulatePropertyInfo(String, AnimationPropertyInfo)

アニメーション化できるプロパティを定義します。

(継承元 CompositionObject)
StartAnimation(String, CompositionAnimation, AnimationController)

アニメーションをオブジェクトの指定したプロパティに接続し、アニメーションを開始します。

(継承元 CompositionObject)
StartAnimation(String, CompositionAnimation)

アニメーションをオブジェクトの指定したプロパティに接続し、アニメーションを開始します。

(継承元 CompositionObject)
StartAnimationGroup(ICompositionAnimationBase)

アニメーション グループを開始します。

CompositionObject の StartAnimationGroup メソッドを使用すると、CompositionAnimationGroup を開始できます。 グループ内のすべてのアニメーションは、オブジェクトで同時に開始されます。

(継承元 CompositionObject)
StopAnimation(String)

指定したプロパティからアニメーションを切断し、アニメーションを停止します。

(継承元 CompositionObject)
StopAnimationGroup(ICompositionAnimationBase)

アニメーション グループを停止します。

(継承元 CompositionObject)
TryGetAnimationController(String)

指定したプロパティで実行されているアニメーションの AnimationController を返します。

(継承元 CompositionObject)

イベント

Completed

CompositionCommitBatch 内のすべてのオブジェクトが完了したときにトリガーされるイベント。

適用対象

こちらもご覧ください