使用WPF动画编程的几点注意事项[转]
1.???????在FrameworkElement.Triggers中啟動動畫的幾點備注:
·?????????此Triggers集合中只支持EventTrigger,使用其他類型的Trigger將會加載失敗。
·?????????EventTrigger.SourceName指定的元素必須在當前的EventTrigger所應用的元素的邏輯子樹內。如果EventTrigger應用于自身元素,則不需要制定SourceName屬性。
·?????????當對一個依賴屬性應用了動畫后,再對該屬性賦值需要特別注意Timeline.FillBehavior的值。如果Timeline.FillBehavior==HoldEnd,那么在代碼中對該屬性進行賦值是沒有效果的。該屬性將會一直持有動畫賦予的值。原因是動畫賦值有較高的優先級。可以設置FillBehavior為Stop或者在該屬性上清除動畫來解決此問題:
?????btn.BeginAnimation(Button.OpacityProperty,?null);
?
2.???????關于啟動動畫的兩種方式的幾點備注,啟動動畫有兩種方式:
·?????????一種是使用UIElement.BeginAnimation方法。該方法會啟動參數所制定的動畫來animate自身的某個依賴屬性。非常簡單,但是該方法只能啟動一個動畫。
·?????????另一種是使用Storyboard.Begin方法。該方法可以一次啟動多個動畫,只要這些動畫包含在Storyboard里面。而且其中包含每個Timeline都需要用Storyboard.SetTargetName和Storyboard.SetTargetProperty來制定目標元素和目標屬性。需要特別注意的一個缺點是:Storyboard中包含的所有Timeline的Target都必須是FrameworkElement或者FrameworkContentElement的派生類的對象。否則該動畫不會有任何效果。這是由于PropertyPath類造成的,因為在SetTargetProperty的時候需要提供一個PropertyPath的一個構造,而PropertyPath被限制與引用從FrameworkElement或者FrameworkContentElement的路徑,這是PropertyPath用在Target mode的限制。
?
from:http://blog.csdn.net/gentle_wolf/article/details/6386661?
?
總結
以上是生活随笔為你收集整理的使用WPF动画编程的几点注意事项[转]的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux 好用的命令积累
- 下一篇: HDU 2098 分拆素数和