2009-10-06 10 views
9

¿Cómo hacemos la animación sin problemas. Tengo el código como a continuación.¿Cómo hacer que la animación sea más suave a través del código en WPF?

ThicknessAnimation anima = 
    new ThicknessAnimation(new Thickness(0), new Thickness(0, 25, 0, 0), 
     new Duration(new TimeSpan(0, 0, seconds)), FillBehavior.HoldEnd);     

pdRod.BeginAnimation(Border.MarginProperty, anima); 

Funciona, pero no lo suficientemente suave. ¿Cómo hacerlo sin problemas?

Gracias,

Respuesta

11

Para hacer esto en el código, se utiliza el método Timeline.SetDesiredFrameRate(Timeline,int?), así:

ThicknessAnimation anim = ...; 
Timeline.SetDesiredFrameRate(anim, 60); // 60 FPS 

Pasando null para el segundo argumento indica al sistema para controlar la velocidad de fotogramas.

+0

Muchas gracias Drew .. – Ershad

+1

Para mí la configuración 'Timeline.DesiredFrameRate' en' Animation' no funcionó. Tuve que configurarlo en mi 'Storyboard' en su lugar. – ghord

1

tratar de ajustar la propiedad adjunta Timeline.DesiredFrameRate a sus necesidades. Un framerate más alto reducirá la rotura que pueda ver.

+0

Gracias, pero Cómo establecer Timeline.DesiredFrameRate para un objeto de animación/objeto Frameorkement. En el ejemplo anterior, ¿cómo establecer? – Ershad

3

Si está utilizando StoryBoard, use DesiredFrameRate = 30.

Cuestiones relacionadas