FrameworkContentElement.BeginStoryboard Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Inicia a sequência de ações contidas no storyboard fornecido.
Sobrecargas
BeginStoryboard(Storyboard) |
Inicia a sequência de ações contidas no storyboard fornecido. |
BeginStoryboard(Storyboard, HandoffBehavior) |
Inicia a sequência de ações contidas no storyboard fornecido, com opções especificadas para o que deve ocorrer se a propriedade já estiver animada. |
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. |
BeginStoryboard(Storyboard)
Inicia 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 a ser iniciado.
Comentários
Para as assinaturas que não usam o isControllable
, parâmetro ou quando esse parâmetro é especificado false
, os relógios da linha do tempo associados à animação são removidos assim que ele atinge o período de "Preenchimento". Portanto, a animação não pode ser reiniciada depois de ser executada uma vez. Observe que controlar uma animação também requer que o storyboard seja nomeado ou acessível como uma instância no código.
Aplica-se a
BeginStoryboard(Storyboard, HandoffBehavior)
Inicia a sequência de ações contidas no storyboard fornecido, com opções especificadas para o que deve ocorrer 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 a ser iniciado.
- handoffBehavior
- HandoffBehavior
Um valor da enumeração que descreve o comportamento a ser usado se uma propriedade descrita no storyboard já estiver animada.
Comentários
Para as assinaturas que não usam o isControllable
, parâmetro ou quando esse parâmetro é especificado false
, os relógios da linha do tempo associados à animação são removidos assim que ele atinge o período de "Preenchimento". Portanto, a animação não pode ser reiniciada depois de ser executada uma vez. Observe que controlar uma animação também requer que o storyboard seja nomeado ou acessível como uma instância no código.
Usando o HandoffBehavior do Compose
Quando você aplica um Storyboard, AnimationTimelineou AnimationClock a uma propriedade usando o ComposeHandoffBehavior, todos os objetos Clock anteriormente associados a essa propriedade continuam a consumir recursos do sistema; o sistema de tempo não remove os relógios automaticamente.
Para evitar problemas de desempenho quando você aplica um grande número de relógios usando Compose, remova os relógios de composição da propriedade animada depois que eles forem concluídos. Há várias maneiras de remover um relógio:
Para remover todos os relógios de uma propriedade, use o método ApplyAnimationClock(DependencyProperty, AnimationClock) ou BeginAnimation(DependencyProperty, AnimationTimeline) do objeto animado. Especifique a propriedade que está sendo animada como o primeiro parâmetro e
null
como a segunda. Isso remove todos os relógios de animação da propriedade.Para remover um AnimationClock específico de uma lista de relógios, use a propriedade Controller do AnimationClock para recuperar um ClockControllere, em seguida, chame o método Remove do ClockController. Normalmente, isso é feito no manipulador de eventos Completed para um relógio. Observe que somente relógios raiz podem ser controlados por um ClockController; a propriedade Controller de um relógio filho retorna
null
. Observe também que o evento Completed não será gerado se a duração efetiva do relógio for para sempre. Nesse caso, o usuário deve determinar quando chamar Remove.
Esse é um problema principalmente para animações em objetos que têm um longo tempo de vida. Quando um objeto é coletado, seus relógios também são desconectados e o lixo é coletado.
Para obter mais informações sobre objetos de relógio, consulte Visão geral do sistema de animação e temporização.
Aplica-se a
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.
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 a ser iniciado.
- handoffBehavior
- HandoffBehavior
Um valor da enumeração que descreve o comportamento a ser usado se uma propriedade descrita no storyboard já estiver animada.
- isControllable
- Boolean
Declara se a animação é controlável (pode ser pausada) depois de ser iniciada.
Comentários
Para as assinaturas que não usam o isControllable
, parâmetro ou quando esse parâmetro é especificado false
, os relógios da linha do tempo associados à animação são removidos assim que ele atinge o período de "Preenchimento". Portanto, a animação não pode ser reiniciada depois de ser executada uma vez. Observe que controlar uma animação também requer que o storyboard seja nomeado ou acessível como uma instância no código.
Usando o HandoffBehavior do Compose
Quando você aplica um Storyboard, AnimationTimelineou AnimationClock a uma propriedade usando o ComposeHandoffBehavior, todos os objetos Clock anteriormente associados a essa propriedade continuam a consumir recursos do sistema; o sistema de tempo não remove esses relógios automaticamente.
Para evitar problemas de desempenho quando você aplica um grande número de relógios usando Compose, remova os relógios de composição da propriedade animada depois que eles forem concluídos. Há várias maneiras de remover um relógio:
Para remover todos os relógios de uma propriedade, use o método ApplyAnimationClock(DependencyProperty, AnimationClock) ou BeginAnimation(DependencyProperty, AnimationTimeline) do objeto animado. Especifique a propriedade que está sendo animada como o primeiro parâmetro e
null
como a segunda. Isso remove todos os relógios de animação da propriedade.Para remover um AnimationClock específico de uma lista de relógios, use a propriedade Controller do AnimationClock para recuperar um ClockControllere, em seguida, chame o método Remove do ClockController. Normalmente, isso é feito no manipulador de eventos Completed para um relógio. Observe que somente relógios raiz podem ser controlados por um ClockController; a propriedade Controller de um relógio filho retorna
null
. Observe também que o evento Completed não será gerado se a duração efetiva do relógio for para sempre. Nesse caso, o usuário deve determinar quando chamar Remove.
Esse é um problema principalmente para animações em objetos que têm um longo tempo de vida. Quando um objeto é coletado, seus relógios também são desconectados e o lixo é coletado.
Para obter mais informações sobre objetos de relógio, consulte Visão geral do sistema de animação e temporização.