資源簡介
平時工作積累的資源。代碼經過封裝,使用方便,包含多種動畫。
類名:AirBubblesAnimation
效果:氣泡動畫
說明:類似于氣泡的彈出動畫(根據運用場景設置元素向下對齊,能看出氣泡自下向上彈出),彈出之后有來回的緩動效果。
類名:ShuttersAnimation
效果:百葉窗動畫
說明:類似于百葉窗的展現動畫(一般用于圖片、視頻效果)。可通過設置矩形寬度和百葉窗方向,來實現不同的展示效果。
類名:OpacityFadingAnimation
效果:淡入淡出動畫
說明:通過控制元素的透明度,實現元素的淡入淡出動畫效果。
類名:InsideOutFadingAnimation
效果:擴散動畫
說明:通過控制元素透明掩碼,實現元素由中心向外漸顯的動畫,以及由外向中心漸隱的動畫。
類名:LinearFadingAnimation
效果:線性動畫
說明:通過控制元素透明掩碼,實現元素自下向上的漸顯動畫,以及自上向下的漸隱動畫。
類名:AirBubblesAnimation
效果:氣泡動畫
說明:類似于氣泡的彈出動畫(根據運用場景設置元素向下對齊,能看出氣泡自下向上彈出),彈出之后有來回的緩動效果。
類名:ShuttersAnimation
效果:百葉窗動畫
說明:類似于百葉窗的展現動畫(一般用于圖片、視頻效果)。可通過設置矩形寬度和百葉窗方向,來實現不同的展示效果。
類名:OpacityFadingAnimation
效果:淡入淡出動畫
說明:通過控制元素的透明度,實現元素的淡入淡出動畫效果。
類名:InsideOutFadingAnimation
效果:擴散動畫
說明:通過控制元素透明掩碼,實現元素由中心向外漸顯的動畫,以及由外向中心漸隱的動畫。
類名:LinearFadingAnimation
效果:線性動畫
說明:通過控制元素透明掩碼,實現元素自下向上的漸顯動畫,以及自上向下的漸隱動畫。

代碼片段和文件信息
using?System;
using?System.Collections.Generic;
using?System.Linq;
using?System.Text;
namespace?System.Windows.Media.Animation?{
????///?
????///?氣泡動畫
????///?
????public?class?AirBubblesAnimation?{
????????#region?私有字段
????????//動畫元素
????????private?frameworkElement?element;
????????//顯示故事版
????????private?Storyboard?showStoryboard;
????????//隱藏故事版
????????private?Storyboard?hideStoryboard;
????????#endregion
????????#region?公共屬性
????????///?
????????///?顯示動畫結束事件
????????///?
????????public?event?EventHandler?ShowAnimationCompleted;
????????///?
????????///?隱藏動畫結束事件
????????///?
????????public?event?EventHandler?HideAnimationCompleted;
????????///?
????????///?顯示元素大小
????????///?
????????public?Size?ElementSize?{?get;?set;?}
????????#endregion
????????#region?公共方法
????????///?
????????///?氣泡動畫實例
????????///?
????????///?動畫元素
????????public?AirBubblesAnimation(frameworkElement?element)?{
????????????this.element?=?element;
????????????//顯示動畫
????????????var?showWidthAnimation?=?new?DoubleAnimation(0?this.ElementSize.Width?new?Duration(TimeSpan.FromSeconds(1.5)))?{
????????????????EasingFunction?=?new?ElasticEase()?{?EasingMode?=?EasingMode.EaseOut?Oscillations?=?8?Springiness?=?18?}
????????????};
????????????var?showHeightAnimation?=?new?DoubleAnimation(0?this.ElementSize.Height?new?Duration(TimeSpan.FromSeconds(1.5)))?{
????????????????EasingFunction?=?new?ElasticEase()?{?EasingMode?=?EasingMode.EaseOut?Oscillations?=?8?Springiness?=?18?}
????????????};
????????????this.showStoryboard?=?new?Storyboard()?{?Children?=?new?TimelineCollection()?{?showWidthAnimation?showHeightAnimation?}?};
????????????this.showStoryboard.Completed?+=?showStoryboard_Completed;
????????????Storyboard.SetTarget(showWidthAnimation?this.element);
????????????Storyboard.SetTarget(showHeightAnimation?this.element);
????????????Storyboard.SetTargetProperty(showWidthAnimation?new?PropertyPath(frameworkElement.WidthProperty));
????????????Storyboard.SetTargetProperty(showHeightAnimation?new?PropertyPath(frameworkElement.HeightProperty));
????????????//隱藏動畫
????????????var?hideWidthAnimation?=?new?DoubleAnimation(this.ElementSize.Width?0?new?Duration(TimeSpan.FromSeconds(0.5)))?{
????????????????EasingFunction?=?new?ElasticEase()?{?EasingMode?=?EasingMode.EaseIn?Oscillations?=?2?Springiness?=?15?}
????????????};
????????????var?hideHeightAnimation?=?new?DoubleAnimation(this.ElementSize.Height?0?new?Duration(TimeSpan.FromSeconds(0.5)))?{
????????????????EasingFunction?=?new?ElasticEase()?{?EasingMode?=?EasingMode.EaseIn?Oscillations?=?2?Springiness?=?15?}
????????????};
????????????this.hideStoryboard?=?new?Storyboard()?{?Children?=?new?TimelineCollection()?{?hideWidthAnimation?hideHeightAnimation?}?};
????????????this.hideStoryboard.Completed?+=?hideStoryboard_Compl
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2018-07-19?13:59??WPF動畫類\
?????目錄???????????0??2018-07-19?13:58??WPF動畫類\Animation\
?????文件????????5614??2018-07-19?13:53??WPF動畫類\Animation\AirBubblesAnimation.cs
?????文件????????4639??2018-07-19?13:53??WPF動畫類\Animation\InsideOutFadingAnimation.cs
?????文件????????6933??2018-07-19?13:53??WPF動畫類\Animation\LinearFadingAnimation.cs
?????文件????????3261??2018-07-19?13:53??WPF動畫類\Animation\OpacityFadingAnimation.cs
?????文件????????5538??2018-07-19?13:53??WPF動畫類\Animation\ShuttersAnimation.cs
?????文件?????????963??2018-07-19?10:55??WPF動畫類\Animation\動畫使用類說明.txt
評論
共有 條評論