FrameworkElement.BeginStoryboard Método

Definición

Empieza la secuencia de acciones contenidas en el guión gráfico proporcionado.

Sobrecargas

BeginStoryboard(Storyboard)

Empieza la secuencia de acciones contenidas en el guión gráfico proporcionado.

BeginStoryboard(Storyboard, HandoffBehavior)

Comienza la secuencia de acciones contenidas en el guión gráfico proporcionado, con opciones especificadas para lo que debería ocurrir si la propiedad ya está animada.

BeginStoryboard(Storyboard, HandoffBehavior, Boolean)

Comienza la secuencia de acciones contenidas en el guión gráfico proporcionado, con el estado especificado para el control de la animación una vez iniciado.

BeginStoryboard(Storyboard)

Empieza la secuencia de acciones contenidas en el guión gráfico proporcionado.

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

Guión gráfico que se va a iniciar.

Ejemplos

En el ejemplo siguiente se recupera un Storyboard elemento de los recursos y, a continuación, se ejecuta cuando Storyboard se controla un evento interno.

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

Comentarios

La mayoría de los escenarios de animación típicos no usan este método. Normalmente, se crea el Storyboard elemento o BeginStoryboard en el marcado y, a continuación, se colocan como el EventTrigger contenido en un elemento. Cuando el evento lo desencadena, la animación se ejecuta. La mayoría de los aspectos de control de un Storyboard control se pueden abordar mediante propiedades que se exponen en el marcado.

Para las firmas que no usan el isControllableparámetro , o cuando se especifica falseese parámetro , los relojes de escala de tiempo asociados a la animación se quitan en cuanto la animación alcanza el período "Fill". Por lo tanto, la animación no se puede reiniciar después de ejecutarse una vez. El control de una animación también requiere que el guión gráfico tenga una directiva x:Name o que sea accesible por referencia en el código.

Se aplica a

BeginStoryboard(Storyboard, HandoffBehavior)

Comienza la secuencia de acciones contenidas en el guión gráfico proporcionado, con opciones especificadas para lo que debería ocurrir si la propiedad ya está 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

Guión gráfico que se va a iniciar.

handoffBehavior
HandoffBehavior

Valor de la enumeración que describe el comportamiento que se va a usar si ya está animada una propiedad descrita en el guión gráfico.

Ejemplos

En el ejemplo siguiente se recupera un Storyboard elemento de los recursos y, a continuación, se ejecuta cuando Storyboard se controla un evento interno.

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

Comentarios

La mayoría de los escenarios de animación típicos no usan este método. Normalmente, se crea el Storyboard elemento o BeginStoryboard en el marcado y, a continuación, se colocan como el EventTrigger contenido en un elemento. Cuando el evento lo desencadena, la animación se ejecuta. La mayoría de los aspectos de control de un Storyboard control se pueden abordar mediante propiedades que se exponen en el marcado.

Para las firmas que no usan el isControllableparámetro , o cuando se especifica falseese parámetro , los relojes de escala de tiempo asociados a la animación se quitan en cuanto la animación alcanza el período "Fill". Por lo tanto, la animación no se puede reiniciar después de ejecutarse una vez. El control de una animación también requiere que el guión gráfico tenga una directiva x:Name o que sea accesible por referencia en el código.

El comportamiento de entrega se puede especificar como un atributo de BeginStoryboard.

Uso de Compose HandoffBehavior

Cuando se aplica un Storyboard, AnimationTimelineo AnimationClock a una propiedad mediante ComposeHandoffBehavior, los Clock objetos asociados previamente a esa propiedad siguen usando los recursos del sistema; el sistema de control de tiempo no quita automáticamente los relojes.

Para evitar problemas de rendimiento al aplicar un gran número de relojes mediante Compose, debe quitar los relojes de redacción de la propiedad animada una vez completadas. Hay varias maneras de quitar un reloj:

Este problema se produce principalmente en las animaciones de objetos que tienen un período de duración prolongado. Cuando se recopila un objeto no utilizado, sus relojes también se desconectan y se recopilan elementos no utilizados.

Para obtener más información acerca de los objetos de reloj, consulte Información general sobre sistemas de control de tiempo y animación.

Se aplica a

BeginStoryboard(Storyboard, HandoffBehavior, Boolean)

Comienza la secuencia de acciones contenidas en el guión gráfico proporcionado, con el estado especificado para el control de la animación una vez iniciado.

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

Guión gráfico que se va a iniciar.

handoffBehavior
HandoffBehavior

Valor de la enumeración que describe el comportamiento que se va a usar si ya está animada una propiedad descrita en el guión gráfico.

isControllable
Boolean

Declara si la animación se puede controlar (se puede pausar) después de que se ha iniciado.

Comentarios

La mayoría de los escenarios de animación típicos no usan este método. Normalmente, se crea el Storyboard elemento o BeginStoryboard en el marcado y, a continuación, se colocan como el EventTrigger contenido en un elemento. Cuando el evento lo desencadena, la animación se ejecuta. La mayoría de los aspectos de control de un Storyboard control se pueden abordar mediante propiedades que se exponen en el marcado.

Para las firmas que no usan el isControllableparámetro , o cuando se especifica falseese parámetro , los relojes de escala de tiempo asociados a la animación se quitan en cuanto la animación alcanza el período "Fill". Por lo tanto, la animación no se puede reiniciar después de ejecutarse una vez. El control de una animación también requiere que el guión gráfico tenga una directiva x:Name o que sea accesible por referencia en el código.

El comportamiento de entrega se puede especificar como un atributo de BeginStoryboard.

Uso de Compose HandoffBehavior

Cuando se aplica un Storyboard, AnimationTimelineo AnimationClock a una propiedad mediante ComposeHandoffBehavior, los Clock objetos asociados previamente a esa propiedad siguen usando los recursos del sistema; el sistema de control de tiempo no quita automáticamente los relojes.

Para evitar problemas de rendimiento al aplicar un gran número de relojes mediante Compose, debe quitar los relojes de redacción de la propiedad animada una vez completadas. Hay varias maneras de quitar un reloj:

Este problema se produce principalmente en las animaciones de objetos que tienen un período de duración prolongado. Cuando se recopila un objeto no utilizado, sus relojes también se desconectan y se recopilan elementos no utilizados.

Para obtener más información acerca de los objetos de reloj, consulte Información general sobre sistemas de control de tiempo y animación.

Se aplica a