Condividi tramite


CompositionCommitBatch Classe

Definizione

Gruppo di animazioni o effetti attivi.

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
Ereditarietà
Object Platform::Object IInspectable CompositionObject CompositionCommitBatch
Attributi

Esempio

Commit Batch

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);
}      

Commenti

Rappresenta un gruppo di animazioni o effetti attivi e attiva un callback quando tutti i membri del gruppo sono stati completati. Un oggetto CompositionCommitBatch viene creato in modo implicito, ma deve essere recuperato per dichiarare l'evento completato. Un batch di commit verrà chiuso in modo implicito alla fine di ogni ciclo di commit.

Per un tipo batch di animazione, il callback attiva quando il ritardo combinato e la durata dell'animazione più lunga del batch è trascorso. Per un tipo batch di effetti, il callback attiva quando l'elaborazione di tutti gli effetti nel batch è stata completata.

Il batch di commit corrente può essere recuperato chiamando Compositor.GetCommitBatch in qualsiasi momento durante il ciclo di commit. Il ciclo di commit viene definito come tempo tra gli aggiornamenti dal compositore. Aggiornamenti vengono accodati fino a quando il sistema non è pronto per elaborare le modifiche e disegnare bit sullo schermo. Il batch Commit aggrega tutti gli oggetti all'interno del ciclo di commit, quelli precedenti e successivi alla chiamata di GetCommitBatch .   Il batch Commit viene creato in modo implicito nel thread di composizione, il thread in cui viene creato il compositore. Può essere presente un solo compositore per thread, quindi un batch commit per thread. È necessario recuperare un batch di commit per dichiarare l'evento completato. Un batch di commit verrà chiuso in modo implicito alla fine di ogni ciclo di commit e non può essere sospeso o ripreso, questo comporterà un errore se tentato.

Per altre informazioni sui batch di composizione, vedere Panoramica delle animazioni di composizione .

Proprietà

Comment

Stringa da associare a CompositionObject.

(Ereditato da CompositionObject)
Compositor

Compositore usato per creare questo oggetto CompositionObject.

(Ereditato da CompositionObject)
DispatcherQueue

Ottiene DispatcherQueue per CompositionObject.

(Ereditato da CompositionObject)
ImplicitAnimations

Raccolta di animazioni implicite associate a questo oggetto.

(Ereditato da CompositionObject)
IsActive

Indica se l'oggetto CompositionCommitBatch è attualmente aperto per l'aggregazione degli oggetti.

IsEnded

Indica se CompositionCommitBatch è stato chiuso e non può più accettare modifiche.

Properties

Raccolta di proprietà associate a CompositionObject.

(Ereditato da CompositionObject)

Metodi

Close()

Chiude l'oggetto CompositionObject e rilascia le risorse di sistema.

(Ereditato da CompositionObject)
Dispose()

Esegue attività definite dall'applicazione, come rilasciare o reimpostare risorse non gestite.

(Ereditato da CompositionObject)
PopulatePropertyInfo(String, AnimationPropertyInfo)

Definisce una proprietà che può essere animata.

(Ereditato da CompositionObject)
StartAnimation(String, CompositionAnimation)

Connette un'animazione con la proprietà specificata dell'oggetto e avvia l'animazione.

(Ereditato da CompositionObject)
StartAnimation(String, CompositionAnimation, AnimationController)

Connette un'animazione con la proprietà specificata dell'oggetto e avvia l'animazione.

(Ereditato da CompositionObject)
StartAnimationGroup(ICompositionAnimationBase)

Avvia un gruppo di animazioni.

Il metodo StartAnimationGroup in CompositionObject consente di avviare CompositionAnimationGroup. Tutte le animazioni del gruppo verranno avviate contemporaneamente sull'oggetto.

(Ereditato da CompositionObject)
StopAnimation(String)

Disconnette un'animazione dalla proprietà specificata e arresta l'animazione.

(Ereditato da CompositionObject)
StopAnimationGroup(ICompositionAnimationBase)

Arresta un gruppo di animazioni.

(Ereditato da CompositionObject)
TryGetAnimationController(String)

Restituisce un oggetto AnimationController per l'animazione in esecuzione nella proprietà specificata.

(Ereditato da CompositionObject)

Eventi

Completed

Evento attivato quando tutti gli oggetti in un oggetto CompositionCommitBatch sono stati completati.

Si applica a

Vedi anche