2009-10-06 14 views
9

Come facciamo l'animazione liscia. Ho il codice come sotto.Come rendere l'animazione più fluida tramite il codice in 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); 

Funzionante, ma non abbastanza regolare. Come si fa liscio?

Grazie,

risposta

11

Per fare questo nel codice, si può usare il metodo Timeline.SetDesiredFrameRate(Timeline,int?), in questo modo:

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

Passando null per il secondo argomento dice al sistema per il controllo della velocità dei fotogrammi.

+0

Grazie mille Drew .. – Ershad

+1

Per me l'impostazione di 'Timeline.DesiredFrameRate' su' Animation' non ha funzionato. Ho dovuto impostarlo sul mio 'Storyboard' invece. – ghord

1

tentare di regolare la proprietà associata Timeline.DesiredFrameRate alle vostre esigenze. Un framerate più alto ridurrà lo strappo che potresti vedere.

+0

Grazie, ma Come impostare Timeline.DesiredFrameRate per un oggetto animaition/oggetto Frameorkelement. Nell'esempio sopra, come impostare? – Ershad

3

Se si utilizza StoryBoard, utilizzare DesiredFrameRate = 30.

Problemi correlati