BeginStoryboard.HandoffBehavior Propriedade
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Obtém ou define o comportamento correto de hand-off para iniciar um relógio de animação neste storyboard.
public:
property System::Windows::Media::Animation::HandoffBehavior HandoffBehavior { System::Windows::Media::Animation::HandoffBehavior get(); void set(System::Windows::Media::Animation::HandoffBehavior value); };
public System.Windows.Media.Animation.HandoffBehavior HandoffBehavior { get; set; }
member this.HandoffBehavior : System.Windows.Media.Animation.HandoffBehavior with get, set
Public Property HandoffBehavior As HandoffBehavior
Valor de Propriedade
Um dos HandoffBehavior valores de enumeração. O valor predefinido é SnapshotAndReplace.
Observações
Usando o Compose HandoffBehavior
Quando aplica um Storyboard, , ou AnimationTimeline a uma propriedade usando AnimationClock, quaisquer HandoffBehavior.Compose objetos anteriormente associados a essa propriedade continuam a consumir recursos do sistema; o sistema de temporização não remove automaticamente Clockestes relógios.
Para evitar problemas de desempenho ao aplicar um grande número de relógios usando Composeo , você deve remover os relógios de composição da propriedade animada depois que eles forem concluídos. Existem várias formas 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
nullcomo o segundo. Isso removerá todos os relógios de animação da propriedade.Para remover um específico AnimationClock de uma lista de relógios, use a Controller propriedade do AnimationClock para recuperar um ClockControllere, em seguida, chame o Remove método do ClockController. Isso geralmente é feito no manipulador de eventos de um Completed relógio. Note que apenas os relógios raiz podem ser controlados por um ClockController; a Controller propriedade de um relógio filho devolve
null. Note-se também que o Completed evento não é chamado se a duração efetiva do relógio for para sempre. Nesse caso, o utilizador deve determinar quando chamar Remove.
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.