2009-12-07 13 views
3

Après l'exécution des animations WPF sur les propriétés de dépendance dans le code, les propriétés de dépendance ne peuvent plus être définies à l'aide de SetValue. Ils ne peuvent être modifiés qu'à travers des animations. Je veux changer une propriété de dépendance, parfois à travers de courtes animations, parfois immédiatement dans le code.Comment faire pour l'unanimité WPF DependencyProperty?

Alors, comment puis-je supprimer l'animation d'une propriété de dépendance après que l'animation a atteint sa fin?

Répondre

4

Après les extrémités d'animation (ou quand vous le voulez arrêter):

myButton.Width = myButton.Width; // set current value to the end value of the animation 
myButton.ApplyAnimationClock(Button.WidthProperty, null); // remove animation 

Pour une bibliothèque qui le rend vraiment facile jeter un oeil à http://code.google.com/p/wpf-animation/

+0

Merci, c'est la solution pour une répétition animation. Ma propre solution est seulement bonne pour les animations non répétitives. – Guge

+0

Merci, cette bibliothèque d'animation résout quelques ennuis pour moi. –

5

Définissez FillBehaviour de l'animation sur Stop. Appelez ensuite BeginAnimation. Définissez ensuite la valeur de la propriété sur la valeur finale de l'animation.

Maintenant, une fois l'animation terminée, la propriété fonctionnera de nouveau comme une propriété normale.