FrameworkElement.BeginStoryboard Methode

Definition

Beginnt die Abfolge von Aktionen, die im bereitgestellten Storyboard enthalten sind.

Überlädt

BeginStoryboard(Storyboard)

Beginnt die Abfolge von Aktionen, die im bereitgestellten Storyboard enthalten sind.

BeginStoryboard(Storyboard, HandoffBehavior)

Beginnt die Abfolge von Aktionen, die im bereitgestellten Storyboard enthalten sind, mit Optionen, die angegeben sind, was passieren soll, wenn die Eigenschaft bereits animiert ist.

BeginStoryboard(Storyboard, HandoffBehavior, Boolean)

Beginnt die Abfolge von Aktionen, die im bereitgestellten Storyboard enthalten sind, mit dem angegebenen Zustand für die Steuerung der Animation, nachdem sie gestartet wurde.

BeginStoryboard(Storyboard)

Beginnt die Abfolge von Aktionen, die im bereitgestellten Storyboard enthalten sind.

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)

Parameter

storyboard
Storyboard

Das Storyboard, das beginnen soll.

Beispiele

Im folgenden Beispiel wird eine Storyboard aus Ressourcen abgerufen und anschließend ausgeführt, die Storyboard, wenn ein internes Ereignis klassenhandhabt wird.

private void OnImage1Animate(object sender, RoutedEventArgs e)
{
    Storyboard s;

    s = (Storyboard)this.FindResource("RotateStoryboard");
    this.BeginStoryboard(s);
}
Private Sub OnImage1Animate(ByVal sender As Object, ByVal e As RoutedEventArgs)
    Dim s As Storyboard

    s = CType(Me.FindResource("RotateStoryboard"), Storyboard)
    Me.BeginStoryboard(s)
End Sub

Hinweise

Die meisten typischen Animationsszenarien verwenden diese Methode nicht. In der Regel erstellen Sie das Storyboard- oder BeginStoryboard-Element im Markup und platzieren diese dann als EventTrigger Inhalt in einem Element. Wenn die Animation durch das Ereignis ausgelöst wird, wird die Animation ausgeführt. Die meisten Steuerelementaspekte eines Storyboard können durch Eigenschaften behoben werden, die im Markup verfügbar gemacht werden.

Bei signaturen, die nicht den isControllable, Parameter oder wenn dieser Parameter falseangegeben wird, werden die Zeitachsenuhren, die der Animation zugeordnet sind, entfernt, sobald die Animation den "Füllzeitraum" erreicht. Daher kann die Animation nach der Ausführung nicht einmal neu gestartet werden. Die Steuerung einer Animation erfordert außerdem, dass das Storyboard über eine x:Name-Direktive verfügt oder über einen Verweis im Code darauf zugreifen kann.

Gilt für:

BeginStoryboard(Storyboard, HandoffBehavior)

Beginnt die Abfolge von Aktionen, die im bereitgestellten Storyboard enthalten sind, mit Optionen, die angegeben sind, was passieren soll, wenn die Eigenschaft bereits animiert ist.

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)

Parameter

storyboard
Storyboard

Das Storyboard, das beginnen soll.

handoffBehavior
HandoffBehavior

Ein Wert der Aufzählung, die das Verhalten beschreibt, das verwendet werden soll, wenn eine im Storyboard beschriebene Eigenschaft bereits animiert ist.

Beispiele

Im folgenden Beispiel wird eine Storyboard aus Ressourcen abgerufen und anschließend ausgeführt, die Storyboard, wenn ein internes Ereignis klassenhandhabt wird.

private void OnImage1Animate(object sender, RoutedEventArgs e)
{
    Storyboard s;

    s = (Storyboard)this.FindResource("RotateStoryboard");
    this.BeginStoryboard(s);
}
Private Sub OnImage1Animate(ByVal sender As Object, ByVal e As RoutedEventArgs)
    Dim s As Storyboard

    s = CType(Me.FindResource("RotateStoryboard"), Storyboard)
    Me.BeginStoryboard(s)
End Sub

Hinweise

Die meisten typischen Animationsszenarien verwenden diese Methode nicht. In der Regel erstellen Sie das Storyboard- oder BeginStoryboard-Element im Markup und platzieren diese dann als EventTrigger Inhalt in einem Element. Wenn die Animation durch das Ereignis ausgelöst wird, wird die Animation ausgeführt. Die meisten Steuerelementaspekte eines Storyboard können durch Eigenschaften behoben werden, die im Markup verfügbar gemacht werden.

Bei signaturen, die nicht den isControllable, Parameter oder wenn dieser Parameter falseangegeben wird, werden die Zeitachsenuhren, die der Animation zugeordnet sind, entfernt, sobald die Animation den "Füllzeitraum" erreicht. Daher kann die Animation nach der Ausführung nicht einmal neu gestartet werden. Die Steuerung einer Animation erfordert außerdem, dass das Storyboard über eine x:Name-Direktive verfügt oder über einen Verweis im Code darauf zugreifen kann.

Das Handoffverhalten kann als Attribut von BeginStoryboardangegeben werden.

Verwenden des VerfassenhandoffBehavior

Wenn Sie eine Storyboard, AnimationTimelineoder AnimationClock auf eine Eigenschaft anwenden, indem Sie die ComposeHandoffBehaviorverwenden, verwenden alle zuvor dieser Eigenschaft zugeordneten Clock Objekte weiterhin Systemressourcen; Das Timing-System entfernt die Uhren nicht automatisch.

Um Leistungsprobleme zu vermeiden, wenn Sie eine große Anzahl von Uhren mithilfe von Composeanwenden, sollten Sie das Verfassen von Uhren aus der animierten Eigenschaft entfernen, nachdem sie abgeschlossen wurden. Es gibt mehrere Möglichkeiten zum Entfernen einer Uhr:

Dies ist in erster Linie ein Problem bei Animationen für Objekte, die eine lange Lebensdauer aufweisen. Wenn ein Objekt garbage collection wird, werden die Uhren ebenfalls getrennt und garbage collection.

Weitere Informationen zu Uhrobjekten finden Sie unter Animation and Timing System Overview.

Gilt für:

BeginStoryboard(Storyboard, HandoffBehavior, Boolean)

Beginnt die Abfolge von Aktionen, die im bereitgestellten Storyboard enthalten sind, mit dem angegebenen Zustand für die Steuerung der Animation, nachdem sie gestartet wurde.

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)

Parameter

storyboard
Storyboard

Das Storyboard, das beginnen soll.

handoffBehavior
HandoffBehavior

Ein Wert der Aufzählung, die das Verhalten beschreibt, das verwendet werden soll, wenn eine im Storyboard beschriebene Eigenschaft bereits animiert ist.

isControllable
Boolean

Deklariert, ob die Animation gesteuert werden kann (kann angehalten werden), nachdem sie gestartet wurde.

Hinweise

Die meisten typischen Animationsszenarien verwenden diese Methode nicht. In der Regel erstellen Sie das Storyboard- oder BeginStoryboard-Element im Markup und platzieren diese dann als EventTrigger Inhalt in einem Element. Wenn die Animation durch das Ereignis ausgelöst wird, wird die Animation ausgeführt. Die meisten Steuerelementaspekte eines Storyboard können durch Eigenschaften behoben werden, die im Markup verfügbar gemacht werden.

Bei signaturen, die nicht den isControllable, Parameter oder wenn dieser Parameter falseangegeben wird, werden die Zeitachsenuhren, die der Animation zugeordnet sind, entfernt, sobald die Animation den "Füllzeitraum" erreicht. Daher kann die Animation nach der Ausführung nicht einmal neu gestartet werden. Die Steuerung einer Animation erfordert außerdem, dass das Storyboard über eine x:Name-Direktive verfügt oder über einen Verweis im Code darauf zugreifen kann.

Das Handoffverhalten kann als Attribut von BeginStoryboardangegeben werden.

Verwenden des VerfassenhandoffBehavior

Wenn Sie eine Storyboard, AnimationTimelineoder AnimationClock auf eine Eigenschaft anwenden, indem Sie die ComposeHandoffBehaviorverwenden, verwenden alle zuvor dieser Eigenschaft zugeordneten Clock Objekte weiterhin Systemressourcen; Das Timing-System entfernt die Uhren nicht automatisch.

Um Leistungsprobleme zu vermeiden, wenn Sie eine große Anzahl von Uhren mithilfe von Composeanwenden, sollten Sie das Verfassen von Uhren aus der animierten Eigenschaft entfernen, nachdem sie abgeschlossen wurden. Es gibt mehrere Möglichkeiten zum Entfernen einer Uhr:

Dies ist in erster Linie ein Problem bei Animationen für Objekte, die eine lange Lebensdauer aufweisen. Wenn ein Objekt garbage collection wird, werden die Uhren ebenfalls getrennt und garbage collection.

Weitere Informationen zu Uhrobjekten finden Sie unter Animation and Timing System Overview.

Gilt für: