FrameworkElement.BeginStoryboard Método

Definição

Inicia a sequência de ações contidas no storyboard fornecido.Begins the sequence of actions contained in the provided storyboard.

Sobrecargas

BeginStoryboard(Storyboard)

Inicia a sequência de ações que estão contidas no storyboard fornecido.Begins the sequence of actions that are contained in the provided storyboard.

BeginStoryboard(Storyboard, HandoffBehavior)

Inicia a sequência de ações contida no storyboard fornecido, com opções especificadas para o que acontece se a propriedade já for animada.Begins the sequence of actions contained in the provided storyboard, with options specified for what should happen if the property is already animated.

BeginStoryboard(Storyboard, HandoffBehavior, Boolean)

Inicia a sequência de ações contidas no storyboard fornecido, com o estado especificado para o controle da animação depois que ela é iniciada.Begins the sequence of actions contained in the provided storyboard, with specified state for control of the animation after it is started.

BeginStoryboard(Storyboard)

Inicia a sequência de ações que estão contidas no storyboard fornecido.Begins the sequence of actions that are contained in the provided storyboard.

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

Parâmetros

storyboard
Storyboard

O storyboard a ser iniciado.The storyboard to begin.

Exemplos

O exemplo a seguir recupera uma Storyboard de recursos e, em seguida, executa essa Storyboard quando um evento interno é tratado pela classe.The following example retrieves a Storyboard from resources, and then runs that Storyboard when an internal event is class handled.

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

Comentários

Os cenários de animação mais comuns não usam esse método.Most typical animation scenarios do not use this method. Normalmente, você cria o elemento Storyboard ou BeginStoryboard na marcação e, em seguida, os coloca como o conteúdo de EventTrigger em um elemento.Typically, you create the Storyboard or BeginStoryboard element in markup, and then you place these as the EventTrigger content on an element. Quando disparado pelo evento, a animação é executada.When triggered by the event, the animation then runs. A maioria dos aspectos de controle de uma Storyboard pode ser resolvida pelas propriedades que são expostas na marcação.Most of the control aspects of a Storyboard can be addressed by properties that are exposed in markup.

Para as assinaturas que não usam o isControllable, o parâmetro ou quando esse parâmetro é especificado false, os relógios da linha do tempo associados à animação são removidos assim que a animação atinge o período de "preenchimento".For the signatures that do not use the isControllable, parameter, or when that parameter is specified false, the timeline clocks that are associated with the animation are removed as soon as the animation reaches the "Fill" period. Portanto, a animação não pode ser reiniciada após ser executada uma vez.Therefore the animation cannot be restarted after running once. O controle de uma animação também exige que o storyboard tenha uma diretiva x:Name ou seja acessível por referência no código.Controlling an animation also requires that the storyboard have an x:Name Directive or be accessible by reference in code.

BeginStoryboard(Storyboard, HandoffBehavior)

Inicia a sequência de ações contida no storyboard fornecido, com opções especificadas para o que acontece se a propriedade já for animada.Begins the sequence of actions contained in the provided storyboard, with options specified for what should happen if the property is already animated.

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

Parâmetros

storyboard
Storyboard

O storyboard a ser iniciado.The storyboard to begin.

handoffBehavior
HandoffBehavior

Um valor de enumeração que descreve o comportamento a ser usado se uma propriedade descrita no storyboard já for animada.A value of the enumeration that describes behavior to use if a property described in the storyboard is already animated.

Exemplos

O exemplo a seguir recupera uma Storyboard de recursos e, em seguida, executa essa Storyboard quando um evento interno é tratado pela classe.The following example retrieves a Storyboard from resources, and then runs that Storyboard when an internal event is class handled.

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

Comentários

Os cenários de animação mais comuns não usam esse método.Most typical animation scenarios do not use this method. Normalmente, você cria o elemento Storyboard ou BeginStoryboard na marcação e, em seguida, os coloca como o conteúdo de EventTrigger em um elemento.Typically, you create the Storyboard or BeginStoryboard element in markup, and then you place these as the EventTrigger content on an element. Quando disparado pelo evento, a animação é executada.When triggered by the event, the animation then runs. A maioria dos aspectos de controle de uma Storyboard pode ser resolvida pelas propriedades que são expostas na marcação.Most of the control aspects of a Storyboard can be addressed by properties that are exposed in markup.

Para as assinaturas que não usam o isControllable, o parâmetro ou quando esse parâmetro é especificado false, os relógios da linha do tempo associados à animação são removidos assim que a animação atinge o período de "preenchimento".For the signatures that do not use the isControllable, parameter, or when that parameter is specified false, the timeline clocks that are associated with the animation are removed as soon as the animation reaches the "Fill" period. Portanto, a animação não pode ser reiniciada após ser executada uma vez.Therefore the animation cannot be restarted after running once. O controle de uma animação também exige que o storyboard tenha uma diretiva x:Name ou seja acessível por referência no código.Controlling an animation also requires that the storyboard have an x:Name Directive or be accessible by reference in code.

O comportamento de entrega pode ser especificado como um atributo de BeginStoryboard.Handoff behavior can be specified as an attribute of BeginStoryboard.

Usando o HandoffBehavior de composiçãoUsing the Compose HandoffBehavior

Quando você aplica uma Storyboard, AnimationTimelineou AnimationClock a uma propriedade usando o HandoffBehaviorCompose, os objetos Clock associados anteriormente a essa propriedade continuam a consumir recursos do sistema; o sistema de tempo não remove os relógios automaticamente.When you apply a Storyboard, AnimationTimeline, or AnimationClock to a property by using the Compose HandoffBehavior, any Clock objects previously associated with that property continue to consume system resources; the timing system does not remove the clocks automatically.

Para evitar problemas de desempenho ao aplicar um grande número de relógios usando Compose, você deve remover os relógios de composição da propriedade animada depois que eles forem concluídos.To avoid performance issues when you apply a large number of clocks by using Compose, you should remove composing clocks from the animated property after they complete. Há várias maneiras de remover um relógio:There are several ways to remove a clock:

Isso é basicamente um problema para animações em objetos que têm um longo tempo de vida.This is primarily an issue for animations on objects that have a long lifetime. Quando um objeto é coletado pelo lixo, seus relógios também são desconectados e coletados como lixo.When an object is garbage collected, its clocks are also disconnected and garbage collected.

Para obter mais informações sobre objetos de relógio, consulte visão geral do sistema de animação e tempo.For more information about clock objects, see Animation and Timing System Overview.

BeginStoryboard(Storyboard, HandoffBehavior, Boolean)

Inicia a sequência de ações contidas no storyboard fornecido, com o estado especificado para o controle da animação depois que ela é iniciada.Begins the sequence of actions contained in the provided storyboard, with specified state for control of the animation after it is started.

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

Parâmetros

storyboard
Storyboard

O storyboard a ser iniciado.The storyboard to begin.

handoffBehavior
HandoffBehavior

Um valor de enumeração que descreve o comportamento a ser usado se uma propriedade descrita no storyboard já for animada.A value of the enumeration that describes behavior to use if a property described in the storyboard is already animated.

isControllable
Boolean

Declara se a animação é controlável (pode estar em pausa) depois que ela é iniciada.Declares whether the animation is controllable (can be paused) after it is started.

Comentários

Os cenários de animação mais comuns não usam esse método.Most typical animation scenarios do not use this method. Normalmente, você cria o elemento Storyboard ou BeginStoryboard na marcação e, em seguida, os coloca como o conteúdo de EventTrigger em um elemento.Typically, you create the Storyboard or BeginStoryboard element in markup, and then you place these as the EventTrigger content on an element. Quando disparado pelo evento, a animação é executada.When triggered by the event, the animation then runs. A maioria dos aspectos de controle de uma Storyboard pode ser resolvida pelas propriedades que são expostas na marcação.Most of the control aspects of a Storyboard can be addressed by properties that are exposed in markup.

Para as assinaturas que não usam o isControllable, o parâmetro ou quando esse parâmetro é especificado false, os relógios da linha do tempo associados à animação são removidos assim que a animação atinge o período de "preenchimento".For the signatures that do not use the isControllable, parameter, or when that parameter is specified false, the timeline clocks that are associated with the animation are removed as soon as the animation reaches the "Fill" period. Portanto, a animação não pode ser reiniciada após ser executada uma vez.Therefore the animation cannot be restarted after running once. O controle de uma animação também exige que o storyboard tenha uma diretiva x:Name ou seja acessível por referência no código.Controlling an animation also requires that the storyboard have an x:Name Directive or be accessible by reference in code.

O comportamento de entrega pode ser especificado como um atributo de BeginStoryboard.Handoff behavior can be specified as an attribute of BeginStoryboard.

Usando o HandoffBehavior de composiçãoUsing the Compose HandoffBehavior

Quando você aplica uma Storyboard, AnimationTimelineou AnimationClock a uma propriedade usando o HandoffBehaviorCompose, os objetos Clock associados anteriormente a essa propriedade continuam a consumir recursos do sistema; o sistema de tempo não remove os relógios automaticamente.When you apply a Storyboard, AnimationTimeline, or AnimationClock to a property by using the Compose HandoffBehavior, any Clock objects previously associated with that property continue to consume system resources; the timing system does not remove the clocks automatically.

Para evitar problemas de desempenho ao aplicar um grande número de relógios usando Compose, você deve remover os relógios de composição da propriedade animada depois que eles forem concluídos.To avoid performance issues when you apply a large number of clocks by using Compose, you should remove composing clocks from the animated property after they complete. Há várias maneiras de remover um relógio:There are several ways to remove a clock:

Isso é basicamente um problema para animações em objetos que têm um longo tempo de vida.This is primarily an issue for animations on objects that have a long lifetime. Quando um objeto é coletado pelo lixo, seus relógios também são desconectados e coletados como lixo.When an object is garbage collected, its clocks are also disconnected and garbage collected.

Para obter mais informações sobre objetos de relógio, consulte visão geral do sistema de animação e tempo.For more information about clock objects, see Animation and Timing System Overview.

Aplica-se a