Condividi tramite


UIElement.BeginAnimation Metodo

Definizione

Avvia un'animazione per una proprietà animata specificata su questo elemento.

Overload

BeginAnimation(DependencyProperty, AnimationTimeline)

Avvia un'animazione per una proprietà animata specificata su questo elemento.

BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior)

Avvia un'animazione particolare per una proprietà animata specificata su questo elemento, con la possibilità di indicare cosa succede se la proprietà dispone già di un'animazione in esecuzione.

BeginAnimation(DependencyProperty, AnimationTimeline)

Avvia un'animazione per una proprietà animata specificata su questo elemento.

public:
 virtual void BeginAnimation(System::Windows::DependencyProperty ^ dp, System::Windows::Media::Animation::AnimationTimeline ^ animation);
public void BeginAnimation (System.Windows.DependencyProperty dp, System.Windows.Media.Animation.AnimationTimeline animation);
abstract member BeginAnimation : System.Windows.DependencyProperty * System.Windows.Media.Animation.AnimationTimeline -> unit
override this.BeginAnimation : System.Windows.DependencyProperty * System.Windows.Media.Animation.AnimationTimeline -> unit
Public Sub BeginAnimation (dp As DependencyProperty, animation As AnimationTimeline)

Parametri

dp
DependencyProperty

Proprietà alla quale aggiungere un'animazione, specificata come identificatore della proprietà di dipendenza.

animation
AnimationTimeline

Sequenza temporale dell'animazione da avviare.

Implementazioni

Esempio

L'esempio seguente crea un'animazione, la assegna e quindi chiama BeginAnimation per avviarla.

// Animate the button's width.
DoubleAnimation widthAnimation = 
    new DoubleAnimation(120, 300, TimeSpan.FromSeconds(5));
widthAnimation.RepeatBehavior = RepeatBehavior.Forever;
widthAnimation.AutoReverse = true;
animatedButton.BeginAnimation(Button.WidthProperty, widthAnimation);
' Animate the button's width.
Dim widthAnimation As New DoubleAnimation(120, 300, TimeSpan.FromSeconds(5))
widthAnimation.RepeatBehavior = RepeatBehavior.Forever
widthAnimation.AutoReverse = True
animatedButton.BeginAnimation(Button.WidthProperty, widthAnimation)

Commenti

Quando controlli se una proprietà è animata, tieni presente che l'animazione inizierà e verrà considerata animata quando viene eseguito il rendering del primo fotogramma oltre il punto iniziale non animato.

Se per BeginTime animation è null, tutte le animazioni correnti vengono rimosse e il valore corrente della proprietà viene mantenuto.

Se l'intero animation valore è null, tutte le animazioni vengono rimosse dalla proprietà e il valore della proprietà viene ripristinato al valore di base. Tuttavia, la sequenza temporale dell'animazione associata originariamente non viene arrestata. Qualsiasi altra animazione assegnata a tale sequenza temporale continuerà a essere eseguita.

Si applica a

BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior)

Avvia un'animazione particolare per una proprietà animata specificata su questo elemento, con la possibilità di indicare cosa succede se la proprietà dispone già di un'animazione in esecuzione.

public:
 virtual void BeginAnimation(System::Windows::DependencyProperty ^ dp, System::Windows::Media::Animation::AnimationTimeline ^ animation, System::Windows::Media::Animation::HandoffBehavior handoffBehavior);
public void BeginAnimation (System.Windows.DependencyProperty dp, System.Windows.Media.Animation.AnimationTimeline animation, System.Windows.Media.Animation.HandoffBehavior handoffBehavior);
abstract member BeginAnimation : System.Windows.DependencyProperty * System.Windows.Media.Animation.AnimationTimeline * System.Windows.Media.Animation.HandoffBehavior -> unit
override this.BeginAnimation : System.Windows.DependencyProperty * System.Windows.Media.Animation.AnimationTimeline * System.Windows.Media.Animation.HandoffBehavior -> unit
Public Sub BeginAnimation (dp As DependencyProperty, animation As AnimationTimeline, handoffBehavior As HandoffBehavior)

Parametri

dp
DependencyProperty

Proprietà alla quale aggiungere un'animazione, specificata come identificatore della proprietà di dipendenza.

animation
AnimationTimeline

Sequenza temporale dell'animazione da applicare.

handoffBehavior
HandoffBehavior

Valore dell'enumerazione che specifica il modo in cui la nuova animazione interagisce con tutte le animazioni correnti (in esecuzione) che già influiscono sul valore della proprietà.

Implementazioni

Esempio

L'esempio seguente implementa un gestore che ottiene un'animazione esistente da una risorsa e quindi chiama BeginAnimation con un comportamento di handoff specificato.

private void myFrameNavigated(object sender, NavigationEventArgs args)
{
    DoubleAnimation myFadeInAnimation = (DoubleAnimation)this.Resources["MyFadeInAnimationResource"];
    myFrame.BeginAnimation(Frame.OpacityProperty, myFadeInAnimation, HandoffBehavior.SnapshotAndReplace);
}
Private Sub myFrameNavigated(ByVal sender As Object, ByVal args As NavigationEventArgs)
    Dim myFadeInAnimation As DoubleAnimation = CType(Me.Resources("MyFadeInAnimationResource"), DoubleAnimation)
    myFrame.BeginAnimation(Frame.OpacityProperty, myFadeInAnimation, HandoffBehavior.SnapshotAndReplace)
End Sub

Commenti

Quando controlli se una proprietà è animata, tieni presente che l'animazione inizierà e verrà considerata animata quando viene eseguito il rendering del primo fotogramma oltre il punto iniziale non animato.

Se per BeginTime animation è null, tutte le animazioni correnti vengono rimosse e il valore corrente della proprietà viene mantenuto.

Se l'intero animation valore è null, tutte le animazioni vengono rimosse dalla proprietà e il valore della proprietà viene ripristinato al valore di base. Tuttavia, la sequenza temporale dell'animazione associata originariamente non viene arrestata. Qualsiasi altra animazione assegnata a tale sequenza temporale continuerà a essere eseguita.

Si applica a