FrameworkElement.BeginStoryboard Método

Definição

Começa a sequência de ações contida no storyboard fornecido.

Sobrecargas

Name Description
BeginStoryboard(Storyboard)

Começa a sequência de ações contidas no storyboard fornecido.

BeginStoryboard(Storyboard, HandoffBehavior)

Começa a sequência de ações contida no storyboard fornecido, com opções especificadas para o que deve acontecer se a propriedade já estiver animada.

BeginStoryboard(Storyboard, HandoffBehavior, Boolean)

Inicia a sequência de ações contida no storyboard fornecido, com o estado especificado para controlo da animação após o seu início.

BeginStoryboard(Storyboard)

Começa a sequência de ações contidas no storyboard fornecido.

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)

Parâmetros

storyboard
Storyboard

O storyboard para começar.

Exemplos

O exemplo seguinte recupera um Storyboard dos recursos e depois executa-o Storyboard quando um evento interno é tratado por classe.

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

Observações

A maioria dos cenários de animação típicos não utiliza este método. Normalmente, cria-se o Storyboard elemento or BeginStoryboard na marcação, e depois coloca-se estes como EventTrigger conteúdo num elemento. Quando é ativado pelo evento, a animação executa-se. A maioria dos aspetos de controlo de um Storyboard pode ser abordada por propriedades expostas na margem.

Para as assinaturas que não utilizam o isControllableparâmetro , ou quando esse parâmetro é especificado false, os relógios de linha temporal associados à animação são removidos assim que a animação atinge o período de "Preenchimento". Portanto, a animação não pode ser reiniciada após uma única execução. Controlar uma animação também exige que o storyboard tenha uma Diretiva x:Name ou seja acessível por referência no código.

Aplica-se a

BeginStoryboard(Storyboard, HandoffBehavior)

Começa a sequência de ações contida no storyboard fornecido, com opções especificadas para o que deve acontecer se a propriedade já estiver animada.

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)

Parâmetros

storyboard
Storyboard

O storyboard para começar.

handoffBehavior
HandoffBehavior

Um valor da enumeração que descreve o comportamento a usar se uma propriedade descrita no storyboard já estiver animada.

Exemplos

O exemplo seguinte recupera um Storyboard dos recursos e depois executa-o Storyboard quando um evento interno é tratado por classe.

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

Observações

A maioria dos cenários de animação típicos não utiliza este método. Normalmente, cria-se o Storyboard elemento or BeginStoryboard na marcação, e depois coloca-se estes como EventTrigger conteúdo num elemento. Quando é ativado pelo evento, a animação executa-se. A maioria dos aspetos de controlo de um Storyboard pode ser abordada por propriedades expostas na margem.

Para as assinaturas que não utilizam o isControllableparâmetro , ou quando esse parâmetro é especificado false, os relógios de linha temporal associados à animação são removidos assim que a animação atinge o período de "Preenchimento". Portanto, a animação não pode ser reiniciada após uma única execução. Controlar uma animação também exige que o storyboard tenha uma Diretiva x:Name ou seja acessível por referência no código.

O comportamento de handoff pode ser especificado como um atributo de BeginStoryboard.

Usando o Compose HandoffBehavior

Quando aplica um Storyboard, , ou AnimationTimeline a uma propriedade usando ,AnimationClockCompose quaisquer HandoffBehavior objetos anteriormente associados a essa propriedade continuam a consumir recursos do sistema; o sistema de temporização não remove automaticamente Clockos relógios.

Para evitar problemas de desempenho ao aplicar um grande número de relógios usando Compose, deve remover os relógios de composição da propriedade animada depois de terminarem. Existem várias formas de remover um relógio:

Isso é principalmente um problema para animações em objetos que têm uma longa vida útil. Quando um objeto é recolhido com lixo, os seus relógios também são desligados e recolhidos pelo lixo.

Para obter mais informações sobre objetos de relógio, consulte Visão geral do sistema de animação e cronometragem.

Aplica-se a

BeginStoryboard(Storyboard, HandoffBehavior, Boolean)

Inicia a sequência de ações contida no storyboard fornecido, com o estado especificado para controlo da animação após o seu início.

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)

Parâmetros

storyboard
Storyboard

O storyboard para começar.

handoffBehavior
HandoffBehavior

Um valor da enumeração que descreve o comportamento a usar se uma propriedade descrita no storyboard já estiver animada.

isControllable
Boolean

Declara se a animação é controlável (pode ser pausada) depois de iniciada.

Observações

A maioria dos cenários de animação típicos não utiliza este método. Normalmente, cria-se o Storyboard elemento or BeginStoryboard na marcação, e depois coloca-se estes como EventTrigger conteúdo num elemento. Quando é ativado pelo evento, a animação executa-se. A maioria dos aspetos de controlo de um Storyboard pode ser abordada por propriedades expostas na margem.

Para as assinaturas que não utilizam o isControllableparâmetro , ou quando esse parâmetro é especificado false, os relógios de linha temporal associados à animação são removidos assim que a animação atinge o período de "Preenchimento". Portanto, a animação não pode ser reiniciada após uma única execução. Controlar uma animação também exige que o storyboard tenha uma Diretiva x:Name ou seja acessível por referência no código.

O comportamento de handoff pode ser especificado como um atributo de BeginStoryboard.

Usando o Compose HandoffBehavior

Quando aplica um Storyboard, , ou AnimationTimeline a uma propriedade usando ,AnimationClockCompose quaisquer HandoffBehavior objetos anteriormente associados a essa propriedade continuam a consumir recursos do sistema; o sistema de temporização não remove automaticamente Clockos relógios.

Para evitar problemas de desempenho ao aplicar um grande número de relógios usando Compose, deve remover os relógios de composição da propriedade animada depois de terminarem. Existem várias formas de remover um relógio:

Isso é principalmente um problema para animações em objetos que têm uma longa vida útil. Quando um objeto é recolhido com lixo, os seus relógios também são desligados e recolhidos pelo lixo.

Para obter mais informações sobre objetos de relógio, consulte Visão geral do sistema de animação e cronometragem.

Aplica-se a