Compartir a través de


CompositionObject.StartAnimation Método

Definición

Sobrecargas

StartAnimation(String, CompositionAnimation)

Conecta una animación con la propiedad especificada del objeto e inicia la animación.

StartAnimation(String, CompositionAnimation, AnimationController)

Conecta una animación con la propiedad especificada del objeto e inicia la animación.

StartAnimation(String, CompositionAnimation)

Conecta una animación con la propiedad especificada del objeto e inicia la animación.

public:
 virtual void StartAnimation(Platform::String ^ propertyName, CompositionAnimation ^ animation) = StartAnimation;
void StartAnimation(winrt::hstring const& propertyName, CompositionAnimation const& animation);
public void StartAnimation(string propertyName, CompositionAnimation animation);
function startAnimation(propertyName, animation)
Public Sub StartAnimation (propertyName As String, animation As CompositionAnimation)

Parámetros

propertyName
String

Platform::String

winrt::hstring

Propiedad a la que se va a asociar la animación.

animation
CompositionAnimation

Animación que se va a asociar a la propiedad especificada.

Requisitos de Windows

Familia de dispositivos
Windows 10 (se introdujo en la versión 10.0.10586.0)
API contract
Windows.Foundation.UniversalApiContract (se introdujo en la versión v2.0)

Ejemplos

void AnimatingVisualOffset(Visual targetVisual) 
{ 
    var animation = _compositor.CreateVector3KeyFrameAnimation(); 

    // 
    // Define specific easing functions. 
    // 


    var linear = _compositor.CreateLinearEasingFunction(); 

    var easeIn = _compositor.CreateCubicBezierEasingFunction( 
            new Vector2(0.5f, 0.0f), new Vector2(1.0f, 1.0f)); 

    var easeOut = _compositor.CreateCubicBezierEasingFunction( 
            new Vector2(0.0f, 0.0f), new Vector2(0.5f, 1.0f)); 

    // 
    // Add a set of key frames to describe how the Offset should change over time.   
    // 

    animation.InsertKeyFrame(0.00f, new Vector3(100.0f, 100.0f, 0.0f)); 
    animation.InsertKeyFrame(0.25f, new Vector3(300.0f, 100.0f, 0.0f), easeIn); 
    animation.InsertKeyFrame(0.50f, new Vector3(300.0f, 300.0f, 0.0f), linear); 
    animation.InsertKeyFrame(0.75f, new Vector3(100.0f, 300.0f, 0.0f), linear); 
    animation.InsertKeyFrame(1.00f, new Vector3(100.0f, 100.0f, 0.0f), easeOut); 

    // 
    // The animation curve defined by the key frames will scale to match the duration. 
    // 

    animation.Duration = TimeSpan.FromMilliseconds(4000); 

    targetVisual.StartAnimation("Offset", animation); 
} 

Comentarios

Si una animación ya está enlazada a la propiedad de un objeto cuando se llama a StartAnimation, la animación aplicada anterior se desconectará y se asignará la nueva animación. Del mismo modo, establecer la propiedad directamente hará que la animación anterior se desconecte y el nuevo valor de propiedad surtirá efecto.

En la tabla siguiente se muestra la lista de propiedades animables:

Objeto Nombre de propiedad Tipo de propiedad
Visual AnchorPoint Vector2
CenterPoint Vector3
Offset Vector3
Opacidad Escalar
Orientación Vector4
RotationAngle Escalar
RotationAxis Vector3
Tamaño Vector2
TransformMatrix Matrix4x4
InsetClip BottomInset Escalar
LeftInset Escalar
RightInset Escalar
TopInset Escalar
CompositionColorBrush Color Windows.UI.Color
CompositionPropertySet Conjunto de propiedades especificadas por el desarrollador.

Además, las propiedades de algunos efectos en el objeto CompositionEffectBrush se pueden animar:

Nombre del efecto Nombre de propiedad Tipo de propiedad
SaturaciónEffect Saturación Escalar
ColorSourceEffect Color Vector4
ArithmeticComposite Offset Escalar
Source1Amount Escalar
Source2Amount Escalar
MultiplicarAmount Escalar
Transform2D TransformMatrix Matrix3x2
ContrastEffect Compare Float
ExposureEffect Exposure Float
HueRotationEffect Ángulo Float
SepiaEffect Intensidad Float
TemperatureAndTintEffect Temperatura Float
Tinte Float
GammaTransferEffect RedAmplitude Float
RedExponent Float
RedOffset Float
GreenAmplitude Float
GreenExponent Float
GreenOffset Float
BlueAmplitude Float
BlueExponent Float
BlueOffset Float
AlphaAmplitude Float
AlphaExponent Float
AlphaOffset Float

Se aplica a

StartAnimation(String, CompositionAnimation, AnimationController)

Conecta una animación con la propiedad especificada del objeto e inicia la animación.

public:
 virtual void StartAnimation(Platform::String ^ propertyName, CompositionAnimation ^ animation, AnimationController ^ animationController) = StartAnimation;
/// [Windows.Foundation.Metadata.Overload("StartAnimationWithController")]
void StartAnimation(winrt::hstring const& propertyName, CompositionAnimation const& animation, AnimationController const& animationController);
[Windows.Foundation.Metadata.Overload("StartAnimationWithController")]
public void StartAnimation(string propertyName, CompositionAnimation animation, AnimationController animationController);
function startAnimation(propertyName, animation, animationController)
Public Sub StartAnimation (propertyName As String, animation As CompositionAnimation, animationController As AnimationController)

Parámetros

propertyName
String

Platform::String

winrt::hstring

Propiedad con la que se va a asociar la animación.

animation
CompositionAnimation

Animación que se va a asociar a la propiedad especificada.

animationController
AnimationController

Controlador de animación que se va a asociar a la animación.

Atributos

Requisitos de Windows

Familia de dispositivos
Windows 11 Insider Preview (se introdujo en la versión 10.0.23504.0)
API contract
Windows.Foundation.UniversalApiContract (se introdujo en la versión v15.0)

Comentarios

El animationController parámetro permite enlazar varias animaciones a la propiedad Progress de un solo controlador, que requiere menos objetos ExpressionAnimation que enlazar varias propiedades del Progress animador a una propiedad CompositionObject.

Se aplica a