FrameworkContentElement.BeginStoryboard 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.
Sağlanan görsel taslakta yer alan eylemlerin sırasını başlatır.
Aşırı Yüklemeler
| Name | Description |
|---|---|
| BeginStoryboard(Storyboard) |
Sağlanan görsel taslakta yer alan eylemlerin sırasını başlatır. |
| BeginStoryboard(Storyboard, HandoffBehavior) |
Sağlanan görsel taslakta yer alan eylemlerin sırasını, özelliğin zaten animasyonlu olması durumunda ne olması gerektiği için belirtilen seçeneklerle başlar. |
| BeginStoryboard(Storyboard, HandoffBehavior, Boolean) |
Sağlanan görsel taslakta yer alan eylemlerin sırasını, başlatıldıktan sonra animasyonun denetimi için belirtilen durumla başlatır. |
BeginStoryboard(Storyboard)
Sağlanan görsel taslakta yer alan eylemlerin sırasını başlatır.
public:
void BeginStoryboard(System::Windows::Media::Animation::Storyboard ^ storyboard);
public void BeginStoryboard(System.Windows.Media.Animation.Storyboard storyboard);
member this.BeginStoryboard : System.Windows.Media.Animation.Storyboard -> unit
Public Sub BeginStoryboard (storyboard As Storyboard)
Parametreler
- storyboard
- Storyboard
Başlamak için görsel taslak.
Açıklamalar
, parametresini isControllablekullanmayan imzalar için veya bu parametre belirtildiğinde false, animasyonla ilişkili zaman çizelgesi saatleri "Dolgu" dönemine ulaşır ulaşmaz kaldırılır. Bu nedenle animasyon bir kez çalıştırıldıktan sonra yeniden başlatılamaz. Bir animasyonu denetlemenin, görsel şeridin kodda bir örnek olarak adlandırılması veya erişilebilir olmasını da gerektirdiğini unutmayın.
Şunlara uygulanır
BeginStoryboard(Storyboard, HandoffBehavior)
Sağlanan görsel taslakta yer alan eylemlerin sırasını, özelliğin zaten animasyonlu olması durumunda ne olması gerektiği için belirtilen seçeneklerle başlar.
public:
void BeginStoryboard(System::Windows::Media::Animation::Storyboard ^ storyboard, System::Windows::Media::Animation::HandoffBehavior handoffBehavior);
public void BeginStoryboard(System.Windows.Media.Animation.Storyboard storyboard, System.Windows.Media.Animation.HandoffBehavior handoffBehavior);
member this.BeginStoryboard : System.Windows.Media.Animation.Storyboard * System.Windows.Media.Animation.HandoffBehavior -> unit
Public Sub BeginStoryboard (storyboard As Storyboard, handoffBehavior As HandoffBehavior)
Parametreler
- storyboard
- Storyboard
Başlamak için görsel taslak.
- handoffBehavior
- HandoffBehavior
Görsel taslakta açıklanan bir özellik zaten animasyonluysa kullanılacak davranışı açıklayan sabit listesi değeri.
Açıklamalar
, parametresini isControllablekullanmayan imzalar için veya bu parametre belirtildiğinde false, animasyonla ilişkili zaman çizelgesi saatleri "Dolgu" dönemine ulaşır ulaşmaz kaldırılır. Bu nedenle animasyon bir kez çalıştırıldıktan sonra yeniden başlatılamaz. Bir animasyonu denetlemenin, görsel şeridin kodda bir örnek olarak adlandırılması veya erişilebilir olmasını da gerektirdiğini unutmayın.
Compose HandoffBehavior Kullanma
kullanarakHandoffBehaviorCompose bir Storyboardözelliğe , AnimationTimelineveya AnimationClock uyguladığınızda, daha önce bu özellikle ilişkilendirilmiş tüm Clock nesneler sistem kaynaklarını kullanmaya devam eder; zamanlama sistemi 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. Saati kaldırmanın birkaç yolu 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 bir alt saatin özelliği döndürür
null. Ayrıca, saatin etkin süresi sonsuza kadar ise olayın tetiklenmediğini unutmayın Completed . Bu durumda, kullanıcının ne zaman çağrıldığını Removebelirlemesi gerekir.
Bu öncelikle yaşam süresi uzun olan nesnelerdeki animasyonlar için bir sorundur. Bir nesne çöp toplandığında, saatlerinin de bağlantısı kesilir ve çöp toplanır.
Saat nesneleri hakkında daha fazla bilgi için bkz. Animasyon ve Zamanlama Sistemine Genel Bakış.
Şunlara uygulanır
BeginStoryboard(Storyboard, HandoffBehavior, Boolean)
Sağlanan görsel taslakta yer alan eylemlerin sırasını, başlatıldıktan sonra animasyonun denetimi için belirtilen durumla başlatır.
public:
void BeginStoryboard(System::Windows::Media::Animation::Storyboard ^ storyboard, System::Windows::Media::Animation::HandoffBehavior handoffBehavior, bool isControllable);
public void BeginStoryboard(System.Windows.Media.Animation.Storyboard storyboard, System.Windows.Media.Animation.HandoffBehavior handoffBehavior, bool isControllable);
member this.BeginStoryboard : System.Windows.Media.Animation.Storyboard * System.Windows.Media.Animation.HandoffBehavior * bool -> unit
Public Sub BeginStoryboard (storyboard As Storyboard, handoffBehavior As HandoffBehavior, isControllable As Boolean)
Parametreler
- storyboard
- Storyboard
Başlamak için görsel taslak.
- handoffBehavior
- HandoffBehavior
Görsel taslakta açıklanan bir özellik zaten animasyonluysa kullanılacak davranışı açıklayan sabit listesi değeri.
- isControllable
- Boolean
Animasyon başlatıldıktan sonra denetlenebilir (duraklatılabilir) olup olmadığını bildirir.
Açıklamalar
, parametresini isControllablekullanmayan imzalar için veya bu parametre belirtildiğinde false, animasyonla ilişkili zaman çizelgesi saatleri "Dolgu" dönemine ulaşır ulaşmaz kaldırılır. Bu nedenle animasyon bir kez çalıştırıldıktan sonra yeniden başlatılamaz. Bir animasyonu denetlemenin, görsel şeridin kodda bir örnek olarak adlandırılması veya erişilebilir olmasını da gerektirdiğini unutmayın.
Compose HandoffBehavior Kullanma
kullanarakHandoffBehaviorCompose bir Storyboardözelliğe , 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. Saati kaldırmanın birkaç yolu 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 bir alt saatin özelliği döndürür
null. Ayrıca, saatin etkin süresi sonsuza kadar ise olayın tetiklenmediğini unutmayın Completed . Bu durumda, kullanıcının ne zaman çağrıldığını Removebelirlemesi gerekir.
Bu öncelikle yaşam süresi uzun olan nesnelerdeki animasyonlar için bir sorundur. Bir nesne çöp toplandığında, saatlerinin de bağlantısı kesilir ve çöp toplanır.
Saat nesneleri hakkında daha fazla bilgi için bkz. Animasyon ve Zamanlama Sistemine Genel Bakış.