Condividi tramite


CompositionCommitBatch Classe

Definizione

Gruppo di animazioni o effetti attivi.

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

Requisiti Windows

Famiglia di dispositivi
Windows 10 (è stato introdotto in 10.0.10586.0)
API contract
Windows.Foundation.UniversalApiContract (è stato introdotto in v2.0)

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 commit verrà chiuso in modo implicito alla fine di ogni ciclo di commit.

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

Il batch commit corrente può essere recuperato chiamando Compositor.GetCommitBatch in qualsiasi momento durante il ciclo di commit. Il ciclo di commit viene definito come il tempo tra gli aggiornamenti del programma di composizione. Aggiornamenti vengono accodati finché il sistema non è pronto per elaborare le modifiche e disegnare i bit sullo schermo. Il batch Commit aggrega tutti gli oggetti all'interno del ciclo di commit, quelli precedenti e successivi alla chiamata a GetCommitBatch .   Il batch Commit viene creato in modo implicito nel thread di composizione, ovvero il thread su cui viene creato il compositore. Può essere presente un solo compositore per thread, di conseguenza un batch commit per ogni thread. È necessario recuperare un batch commit nell'ordine in cui dichiarare l'evento completato. Un batch commit verrà chiuso in modo implicito alla fine di ogni ciclo di commit e non può essere sospeso o ripreso. Se si tenta di eseguire un tentativo, verrà generato un errore.

Per altre informazioni sui batch di composizione, vedere Cenni preliminari sulle animazioni di composizione .

Proprietà

Comment

Stringa da associare a CompositionObject.

(Ereditato da CompositionObject)
Compositor

Compositor utilizzato per creare questo CompositionObject.

(Ereditato da CompositionObject)
Dispatcher

Dispatcher per CompositionObject.

(Ereditato da CompositionObject)
DispatcherQueue

Ottiene dispatcherQueue per CompostionObject.

(Ereditato da CompositionObject)
ImplicitAnimations

Raccolta di animazioni implicite associate a questo oggetto.

(Ereditato da CompositionObject)
IsActive

Indica se 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 CompositionObject e rilascia le risorse di sistema.

(Ereditato da CompositionObject)
ConnectAnimation(String, CompositionAnimation)

Connette e animazione.

(Ereditato da CompositionObject)
DisconnectAnimation(String)

Disconnette un'animazione.

(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 nel 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 sulla proprietà specificata.

(Ereditato da CompositionObject)

Eventi

Completed

Evento attivato al completamento di tutti gli oggetti in compositionCommitBatch .

Si applica a

Vedi anche