Animatable.ApplyAnimationClock Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Belirtilen DependencyProperty öğesini kullanarak belirtilene AnimationClockanimasyon ekler.
Aşırı Yüklemeler
| Name | Description |
|---|---|
| ApplyAnimationClock(DependencyProperty, AnimationClock) |
Belirtilen DependencyPropertyöğesine bir AnimationClock uygular. Özelliği zaten animasyonlu ise, SnapshotAndReplace iletim davranışı kullanılır. |
| ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior) |
Belirtilen DependencyPropertyöğesine bir AnimationClock uygular. Özellik zaten animasyonluysa, belirtilen HandoffBehavior kullanılır. |
ApplyAnimationClock(DependencyProperty, AnimationClock)
Belirtilen DependencyPropertyöğesine bir AnimationClock uygular. Özelliği zaten animasyonlu ise, SnapshotAndReplace iletim davranışı kullanılır.
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)
Parametreler
Animasyon eklemek için özellik.
- clock
- AnimationClock
Belirtilen özelliğe animasyon eklemek için saat. ise clocknull, tüm animasyonlar belirtilen özellikten kaldırılır (ancak durdurulmaz).
Uygulamalar
Açıklamalar
Bir özellikten saatleri kaldırmak için bu yöntemin kullanılması bu saatleri durdurmaz.
Şunlara uygulanır
ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior)
Belirtilen DependencyPropertyöğesine bir AnimationClock uygular. Özellik zaten animasyonluysa, belirtilen HandoffBehavior kullanılır.
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)
Parametreler
Animasyon eklemek için özellik.
- clock
- AnimationClock
Belirtilen özelliğe animasyon eklemek için saat.
SnapshotAndReplace ve handoffBehaviorclock isenull, tüm animasyonlar belirtilen özellikten kaldırılır (ancak durdurulmaz). ise handoffBehaviorCompose ve saat ise null, bu yöntemin hiçbir etkisi yoktur.
- handoffBehavior
- HandoffBehavior
Yeni animasyonların özellik değerini zaten etkileyen geçerli animasyonlarla nasıl etkileşim kuracaklarını belirten bir değer.
Uygulamalar
Örnekler
Aşağıdaki örnekte, farklı HandoffBehavior ayarlar kullanılarak animasyon saatlerinin nasıl uygulanacağı gösterilmektedir.
Açıklamalar
Bu yöntemi kullanarak bir özellikten saatleri kaldırmanın bu saatleri durdurmadığını unutmayın.
Compose HandoffBehavior Kullanma
kullanarakHandoffBehaviorCompose bir Storyboardözelliğine , AnimationTimelineveya AnimationClock uyguladığınızda, daha önce bu özellikle ilişkilendirilmiş tüm Clock nesneler sistem kaynaklarını kullanmaya devam eder; zamanlama sistemi bu saatleri otomatik olarak kaldırmaz.
kullanarak Composeçok sayıda saat uyguladığınızda performans sorunlarını önlemek için, oluşturma saatlerini tamamlandıktan sonra animasyonlu özellikten kaldırmanız gerekir. Bir saati kaldırmanın çeşitli yolları vardır.
Bir özellikten tüm saatleri kaldırmak için animasyonlu nesnenin veya BeginAnimation(DependencyProperty, AnimationTimeline) yöntemini kullanınApplyAnimationClock(DependencyProperty, AnimationClock). Animasyonlu özelliğini ilk parametre olarak,
nullikinci parametre olarak belirtin. Bu, özelliğinden tüm animasyon saatlerini kaldırır.Belirli AnimationClock bir saati saat listesinden kaldırmak için özelliğini AnimationClock kullanarak Controller bir ClockControlleralın ve yöntemini çağırın RemoveClockController. Bu genellikle bir saat için olay işleyicisinde Completed yapılır. Yalnızca kök saatlerin bir ClockControllertarafından denetlenebileceğini unutmayın; Controller alt saatin özelliği döndürür
null. Ayrıca, Completed saatin geçerlilik süresi sonsuza kadar ise olayın çağrılmadığını da unutmayın. Bu durumda, kullanıcının ne zaman çağrılacağını Removebelirlemesi gerekir.
Bu öncelikle yaşam süresi uzun olan nesnelerdeki animasyonlar için bir sorundur. Bir nesne çöp toplandığında, saatleri de kesilir ve çöp toplanır.
Saat nesneleri hakkında daha fazla bilgi için bkz. Animasyon ve Zamanlama Sistemine Genel Bakış.