PointAnimationUsingKeyFrames Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Anima el valor de una propiedad Point a lo largo de un conjunto de fotogramas clave.
public ref class PointAnimationUsingKeyFrames sealed : Timeline
/// [Microsoft.UI.Xaml.Markup.ContentProperty(Name="KeyFrames")]
/// [Windows.Foundation.Metadata.Activatable(65536, "Microsoft.UI.Xaml.WinUIContract")]
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class PointAnimationUsingKeyFrames final : Timeline
[Microsoft.UI.Xaml.Markup.ContentProperty(Name="KeyFrames")]
[Windows.Foundation.Metadata.Activatable(65536, "Microsoft.UI.Xaml.WinUIContract")]
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class PointAnimationUsingKeyFrames : Timeline
Public NotInheritable Class PointAnimationUsingKeyFrames
Inherits Timeline
<PointAnimationUsingKeyFrames>
oneOrMorePointKeyFrames
</PointAnimationUsingKeyFrames>
- Herencia
- Atributos
Ejemplos
En el ejemplo siguiente se mueve una elipse a lo largo de un trazado triangular. En el ejemplo se usa la clase PointAnimationUsingKeyFrames para animar la propiedad Center de un EllipseGeometry. Esta animación utiliza tres fotogramas clave de la siguiente manera:
- Durante la primera mitad de segundo, usa una instancia de la clase LinearPointKeyFrame para mover la elipse a lo largo de una ruta de acceso a una velocidad estable desde su posición inicial. Los fotogramas clave lineales, como LinearPointKeyFrame , crean una interpolación lineal fluida entre valores.
- Durante el final de la mitad siguiente, usa una instancia de la clase DiscretePointKeyFrame para mover repentinamente la elipse a lo largo de la ruta de acceso a la siguiente posición. Los fotogramas clave discretos como DiscretePointKeyFrame crean saltos repentinos entre valores.
- Durante los dos segundos finales, usa una instancia de la clase SplinePointKeyFrame para volver a mover la elipse a su posición inicial. Los fotogramas clave spline como SplinePointKeyFrame crean una transición variable entre valores según los valores de la propiedad KeySpline . En este ejemplo, la animación comienza despacio y se acelera exponencialmente hacia el final del segmento temporal.
<Canvas Width="400" Height="300">
<Canvas.Resources>
<Storyboard x:Name="myStoryboard">
<!-- Animating the Center property uses 3 KeyFrames, which animate
the ellipse allong a triangular path. -->
<PointAnimationUsingKeyFrames
Storyboard.TargetProperty="Center"
Storyboard.TargetName="MyAnimatedEllipseGeometry"
Duration="0:0:5" RepeatBehavior="Forever" EnableDependentAnimation="True">
<!-- Over the first half second, Using a LinearPointKeyFrame, the ellipse
moves steadily from its starting position along the first line of the
trianglar path. -->
<LinearPointKeyFrame KeyTime="0:0:0.5" Value="100,300" />
<!-- Using a DiscretePointKeyFrame, the ellipse suddenly changes position
after the first second of the animation. -->
<DiscretePointKeyFrame KeyTime="0:0:1" Value="400,300" />
<!-- Using a SplinePointKeyFrame, the ellipse moves back to its starting
position. It moves slowly at first and then speeds up. This key frame
takes 2 seconds to complete. -->
<SplinePointKeyFrame KeySpline="0.6,0.0 0.9,0.00"
KeyTime="0:0:3" Value="200,100" />
</PointAnimationUsingKeyFrames>
</Storyboard>
</Canvas.Resources>
<Path Fill="Blue" Loaded="Start_Animation">
<Path.Data>
<!-- Describes an ellipse. -->
<EllipseGeometry x:Name="MyAnimatedEllipseGeometry"
Center="200,100" RadiusX="15" RadiusY="15" />
</Path.Data>
</Path>
</Canvas>
// Start the animation when the object loads
private void Start_Animation(object sender, RoutedEventArgs e)
{
myStoryboard.Begin();
}
Constructores
PointAnimationUsingKeyFrames() |
Inicializa una nueva instancia de la clase PointAnimationUsingKeyFrames . |
Propiedades
AutoReverse |
Obtiene o establece un valor que indica si la escala de tiempo se reproduce en orden inverso después de completar una iteración de avance. (Heredado de Timeline) |
BeginTime |
Obtiene o establece la hora en la que debe comenzar esta escala de tiempo . (Heredado de Timeline) |
Dispatcher |
Siempre devuelve |
DispatcherQueue |
Obtiene el objeto |
Duration |
Obtiene o establece la duración para la que se reproduce esta escala de tiempo, sin contar las repeticiones. (Heredado de Timeline) |
EnableDependentAnimation |
Obtiene o establece un valor que declara si las propiedades animadas que se consideran animaciones dependientes deben poder usar esta declaración de animación. |
EnableDependentAnimationProperty |
Identifica la propiedad de dependencia EnableDependentAnimation . |
FillBehavior |
Obtiene o establece un valor que especifica cómo se comporta la animación después de que llegue al final de su período activo. (Heredado de Timeline) |
KeyFrames |
Obtiene la colección de objetos PointKeyFrame que definen la animación. |
RepeatBehavior |
Obtiene o establece el comportamiento de repetición de esta escala de tiempo. (Heredado de Timeline) |
SpeedRatio |
Obtiene o establece la velocidad, en relación con su elemento primario, en cuyo momento progresa para esta escala de tiempo. (Heredado de Timeline) |
Métodos
ClearValue(DependencyProperty) |
Borra el valor local de una propiedad de dependencia. (Heredado de DependencyObject) |
GetAnimationBaseValue(DependencyProperty) |
Devuelve cualquier valor base establecido para una propiedad de dependencia, que se aplicaría en los casos en los que una animación no está activa. (Heredado de DependencyObject) |
GetValue(DependencyProperty) |
Devuelve el valor efectivo actual de una propiedad de dependencia de dependencyObject. (Heredado de DependencyObject) |
ReadLocalValue(DependencyProperty) |
Devuelve el valor local de una propiedad de dependencia, si se establece un valor local. (Heredado de DependencyObject) |
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback) |
Registra una función de notificación para escuchar los cambios en una dependencyProperty específica en esta instancia de DependencyObject . (Heredado de DependencyObject) |
SetValue(DependencyProperty, Object) |
Establece el valor local de una propiedad de dependencia en dependencyObject. (Heredado de DependencyObject) |
UnregisterPropertyChangedCallback(DependencyProperty, Int64) |
Cancela una notificación de cambio registrada anteriormente llamando a RegisterPropertyChangedCallback. (Heredado de DependencyObject) |
Eventos
Completed |
Se produce cuando se ha completado la reproducción del objeto Storyboard . (Heredado de Timeline) |