Animatable.ApplyAnimationClock Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee wordt de opgegeven DependencyProperty animatie gegeven met behulp van de opgegeven AnimationClock.
Overloads
| Name | Description |
|---|---|
| ApplyAnimationClock(DependencyProperty, AnimationClock) |
Hiermee wordt een AnimationClock op de opgegeven DependencyPropertywaarde toegepast. Als de eigenschap al is geanimeerd, wordt het SnapshotAndReplace handoff-gedrag gebruikt. |
| ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior) |
Hiermee wordt een AnimationClock op de opgegeven DependencyPropertywaarde toegepast. Als de eigenschap al is geanimeerd, wordt de opgegeven HandoffBehavior waarde gebruikt. |
ApplyAnimationClock(DependencyProperty, AnimationClock)
Hiermee wordt een AnimationClock op de opgegeven DependencyPropertywaarde toegepast. Als de eigenschap al is geanimeerd, wordt het SnapshotAndReplace handoff-gedrag gebruikt.
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)
Parameters
De eigenschap die moet worden geanimeerd.
- clock
- AnimationClock
De klok waarmee de opgegeven eigenschap moet worden geanimeerd. Als clock dat het is null, worden alle animaties verwijderd uit de opgegeven eigenschap (maar niet gestopt).
Implementeringen
Opmerkingen
Houd er rekening mee dat als u deze methode gebruikt om klokken uit een eigenschap te verwijderen, deze klokken niet stopt.
Van toepassing op
ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior)
Hiermee wordt een AnimationClock op de opgegeven DependencyPropertywaarde toegepast. Als de eigenschap al is geanimeerd, wordt de opgegeven HandoffBehavior waarde gebruikt.
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)
Parameters
De eigenschap die moet worden geanimeerd.
- clock
- AnimationClock
De klok waarmee de opgegeven eigenschap moet worden geanimeerd. Als handoffBehavior dat het isSnapshotAndReplaceclock, null worden alle animaties verwijderd uit de opgegeven eigenschap (maar niet gestopt). Als handoffBehavior dat het is Compose en de klok is null, heeft deze methode geen effect.
- handoffBehavior
- HandoffBehavior
Een waarde die aangeeft hoe de nieuwe animatie moet communiceren met eventuele huidige animaties die al van invloed zijn op de eigenschapswaarde.
Implementeringen
Voorbeelden
In het volgende voorbeeld ziet u hoe u animatieklokken toepast met behulp van verschillende HandoffBehavior instellingen.
Opmerkingen
Als u deze methode gebruikt om klokken uit een eigenschap te verwijderen, worden deze klokken niet gestopt.
De Compose HandoffBehavior gebruiken
Wanneer u een Storyboard, AnimationTimelineof AnimationClock toepast op een eigenschap met behulp van de ComposeHandoffBehavior, blijven alle eerder gekoppelde Clock objecten systeembronnen gebruiken; het tijdssysteem zal deze klokken niet automatisch verwijderen.
Als u prestatieproblemen wilt voorkomen wanneer u een groot aantal klokken toepast met behulp van Compose, moet u het opstellen van klokken uit de eigenschap animatie verwijderen nadat deze zijn voltooid. Er zijn verschillende manieren om een klok te verwijderen.
Als u alle klokken uit een eigenschap wilt verwijderen, gebruikt u de methode ApplyAnimationClock(DependencyProperty, AnimationClock) of BeginAnimation(DependencyProperty, AnimationTimeline) van het object met animatie. Geef de eigenschap op die wordt geanimeerd als de eerste parameter en
nullals de tweede. Hiermee worden alle animatieklokken uit de eigenschap verwijderd.Als u een specifieke AnimationClock uit een lijst met klokken wilt verwijderen, gebruikt u de eigenschap Controller van de AnimationClock om een ClockControllerop te halen en roept u de methode Remove van de ClockControlleraan. Dit wordt meestal gedaan in de Completed event handler voor een klok. Houd er rekening mee dat alleen hoofdklokken kunnen worden beheerd door een ClockController; de eigenschap Controller van een subklok retourneert
null. Houd er ook rekening mee dat de Completed event niet wordt aangeroepen als de effectieve duur van de klok oneindig is. In dat geval moet de gebruiker bepalen wanneer Removemoet worden aangeroepen.
Dit is voornamelijk een probleem voor animaties op objecten die een lange levensduur hebben. Wanneer een object wordt verzameld, worden de klokken ook losgekoppeld en afval verzameld.
Zie het overzicht van het animatie- en timingsysteem voor meer informatie over klokobjecten.