Animatable.ApplyAnimationClock Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Aggiunge un'animazione all'oggetto DependencyProperty specificato utilizzando l'oggetto AnimationClock indicato.
Overload
ApplyAnimationClock(DependencyProperty, AnimationClock) |
Applica un oggetto AnimationClock all'oggetto DependencyProperty specificato. Se la proprietà è già animata, viene usato il comportamento di continuità di SnapshotAndReplace. |
ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior) |
Applica un oggetto AnimationClock all'oggetto DependencyProperty specificato. Se alla proprietà è già stata aggiunta un'animazione, viene utilizzato l'oggetto HandoffBehavior specificato. |
ApplyAnimationClock(DependencyProperty, AnimationClock)
Applica un oggetto AnimationClock all'oggetto DependencyProperty specificato. Se la proprietà è già animata, viene usato il comportamento di continuità di SnapshotAndReplace.
public:
virtual void ApplyAnimationClock(System::Windows::DependencyProperty ^ dp, System::Windows::Media::Animation::AnimationClock ^ clock);
public void ApplyAnimationClock (System.Windows.DependencyProperty dp, System.Windows.Media.Animation.AnimationClock clock);
abstract member ApplyAnimationClock : System.Windows.DependencyProperty * System.Windows.Media.Animation.AnimationClock -> unit
override this.ApplyAnimationClock : System.Windows.DependencyProperty * System.Windows.Media.Animation.AnimationClock -> unit
Public Sub ApplyAnimationClock (dp As DependencyProperty, clock As AnimationClock)
Parametri
Proprietà a cui applicare l'animazione.
- clock
- AnimationClock
Clock su cui basare l'animazione aggiunta alla proprietà specificata. Se clock
è null
, tutte le animazioni verranno rimosse dalla proprietà specificata (ma non interrotte).
Implementazioni
Commenti
Si noti che l'uso di questo metodo per rimuovere gli orologi da una proprietà non arresta tali orologi.
Si applica a
ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior)
Applica un oggetto AnimationClock all'oggetto DependencyProperty specificato. Se alla proprietà è già stata aggiunta un'animazione, viene utilizzato l'oggetto HandoffBehavior specificato.
public:
virtual void ApplyAnimationClock(System::Windows::DependencyProperty ^ dp, System::Windows::Media::Animation::AnimationClock ^ clock, System::Windows::Media::Animation::HandoffBehavior handoffBehavior);
public void ApplyAnimationClock (System.Windows.DependencyProperty dp, System.Windows.Media.Animation.AnimationClock clock, System.Windows.Media.Animation.HandoffBehavior handoffBehavior);
abstract member ApplyAnimationClock : System.Windows.DependencyProperty * System.Windows.Media.Animation.AnimationClock * System.Windows.Media.Animation.HandoffBehavior -> unit
override this.ApplyAnimationClock : System.Windows.DependencyProperty * System.Windows.Media.Animation.AnimationClock * System.Windows.Media.Animation.HandoffBehavior -> unit
Public Sub ApplyAnimationClock (dp As DependencyProperty, clock As AnimationClock, handoffBehavior As HandoffBehavior)
Parametri
Proprietà a cui applicare l'animazione.
- clock
- AnimationClock
Clock su cui basare l'animazione aggiunta alla proprietà specificata. Se handoffBehavior
è SnapshotAndReplace e clock
è null
, tutte le animazioni verranno rimosse dalla proprietà specificata (ma non interrotte). Se handoffBehavior
è Compose e il clock è null
, questo metodo non ha effetto.
- handoffBehavior
- HandoffBehavior
Valore che specifica il modo in cui la nuova animazione deve interagire con tutte le animazioni correnti che già influiscono sul valore della proprietà.
Implementazioni
Esempio
L'esempio seguente mostra come applicare orologi di animazione usando impostazioni diverse HandoffBehavior .
Commenti
Si noti che l'uso di questo metodo per rimuovere gli orologi da una proprietà non arresta tali orologi.
Uso di Compose HandoffBehavior
Quando si applica una Storyboardproprietà , AnimationTimelineo AnimationClock a una proprietà utilizzando ComposeHandoffBehavior, tutti gli Clock oggetti associati in precedenza a tale proprietà continuano a utilizzare le risorse di sistema. Il sistema di temporizzazione non rimuoverà automaticamente questi orologi.
Per evitare problemi di prestazioni quando si applica un numero elevato di orologi usando Compose, è necessario rimuovere i clock di composizione dalla proprietà animata al termine. Esistono diverse modalità di rimozione di un orologio.
Per rimuovere tutti gli orologi da una proprietà, utilizzare il ApplyAnimationClock(DependencyProperty, AnimationClock) metodo o BeginAnimation(DependencyProperty, AnimationTimeline) dell'oggetto animato. Specificare la proprietà animata come primo parametro e
null
come seconda. In questo modo tutti gli orologi dell'animazione vengono rimossi dalla proprietà.Per rimuovere un oggetto specifico AnimationClock da un elenco di orologi, utilizzare la Controller proprietà di AnimationClock per recuperare un ClockControlleroggetto , quindi chiamare il Remove metodo di ClockController. Questa operazione viene in genere eseguita nel Completed gestore eventi per un orologio. Si noti che solo gli orologi radice possono essere controllati da un ClockControlleroggetto . La Controller proprietà di un orologio figlio restituirà
null
. Si noti anche che l'evento Completed non verrà chiamato se la durata effettiva dell'orologio è per sempre. In tal caso, l'utente dovrà determinare quando chiamare Remove.
Si tratta principalmente di un problema relativo alle animazioni su oggetti di lunga durata. Quando un oggetto viene raccolto nel Garbage Collector, anche gli orologi vengono disconnessi e raccolti nel Garbage Collector stesso.
Per altre informazioni sugli oggetti orologio, vedere Cenni preliminari sull'animazione e sul sistema di temporizzazione.
Si applica a
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per