在編寫WPF控件時,有一些動畫效果及模板樣式咱們憑着想象或僅從別人那裏Copy的代碼在達到的效果上可能不盡如意。在Blend中能夠較爲直觀的去實現。下面我將對Blend分爲三部分進行講解:動畫、視覺管理、模板。本文爲實用性簡述。工具
1、動畫動畫
繼承自:System.Windows.Media.Animation.TimeLinespa
該類有如下屬性:
1.AutoReverse 類型:bool true:正序運行一次反序運行一次
2.BeginTime Nullable<TimeSpan> null:無起始時間點
3.Duration System.Window.Duration 動畫的運行週期 0:0:5 五秒
4.FillBehavior Animation.FillBehavior 獲取或設置一個值,指定運動結束的行爲方式 默認HoleEnd;Stop則相反,不保留結束值
5.RepeatBehavior Animation.RepeatBehavior 重播次數 若是設置RepeatBehavior.Count=1.5x(x是倍數的含義,又稱迭代),該動畫將完整的運行一次,而後在運行一 半動畫。
6.SpeedRatio屬性 Double 該屬性用來控制動畫速率,默認爲1.0.若是設置速率大於1.0,則動畫速度會變快,反之,動畫速度會變慢設計
原理orm
動畫分類對象
1.From/To/By動畫,根據處理的數據類型分爲 :DoubleAnimation、ColorAnimation、PointAnimation繼承
2.關鍵幀動畫:關鍵幀和動畫控制 。關鍵幀:在某一點控制屬性;動畫控制:控制動畫過渡效果:Linear/Diacrete/Spline進程
根據處理的數據類型分爲:DoubleAnimationUsingKeyFrames、ColorAnimationUsingKeyFrames、 PointAnimationUsingKeyFrames、ObjectAnimationUsingKeyFrames資源
blend操做io
StoryBoard:管理時間線的類。功能:管理和控制動畫進程;爲動畫指定控件及控件屬性
面板:【對象和時間線】>> 點擊+號,新建StoryBoard>>在【屬性面板】中設置控件屬性及控件下一層RenderTransform運動軌跡
2、視覺管理器
xmal代碼中的樣式及在不一樣狀態下的樣式設計。
Blend 操做
1.【對象和時間線】面板》》選中控件右鍵 》編輯模板副本...
2.【狀態】面板 》選中狀態》【屬性】面板中添加不一樣狀態的過渡樣式
3、模板
Style和ControlTemplate
Blend操做
Style:
新建:編輯模板》》資源字典 》設置各項屬性及不一樣狀態的樣式
在其餘控件上應用:選中控件》》編輯模板》》應用資源
ControlTemplate:做用是從新定義控件的視覺效果和觸發狀態
選中繪製的圖形或控件》》(菜單)工具》》構成控件