CompositionCommitBatch クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
アクティブなアニメーションまたは効果のグループ。
public ref class CompositionCommitBatch sealed : CompositionObject
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.Foundation.LiftedContract, 65536)]
/// [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.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.Foundation.WindowsAppSDKContract, 65536)]
class CompositionCommitBatch final : CompositionObject
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.Foundation.LiftedContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class CompositionCommitBatch : CompositionObject
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.Foundation.WindowsAppSDKContract), 65536)]
public sealed class CompositionCommitBatch : CompositionObject
Public NotInheritable Class CompositionCommitBatch
Inherits CompositionObject
- 継承
- 属性
例
バッチのコミット
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) |
DispatcherQueue |
CompositionObject の DispatcherQueue を取得します。 (継承元 CompositionObject) |
ImplicitAnimations |
このオブジェクトにアタッチされている暗黙的なアニメーションのコレクション。 (継承元 CompositionObject) |
IsActive |
集計するオブジェクトに 対して CompositionCommitBatch が現在開かれているかどうかを示します。 |
IsEnded |
CompositionCommitBatch が閉じられ、変更を受け入れなくなったかどうかを示します。 |
Properties |
CompositionObject に関連付けられているプロパティのコレクション。 (継承元 CompositionObject) |
メソッド
イベント
Completed |
CompositionCommitBatch 内のすべてのオブジェクトが完了したときにトリガーされるイベント。 |