WPF 精修篇 属性动画

原文:WPF 精修篇 属性动画

属性动画 是通过 Storyboard 来改变属性值


  1. <Rectangle x:Name="rect" Width="200" Height="200" >
  2. <Rectangle.Fill>
  3. <SolidColorBrush Color="Beige" x:Name="color"></SolidColorBrush>
  4. </Rectangle.Fill>
  5. <Rectangle.Triggers>
  6. <EventTrigger RoutedEvent="MouseEnter">
  7. <EventTrigger.Actions>
  8. <BeginStoryboard>
  9. <Storyboard>
  10. <DoubleAnimation Duration="0:0:1" Storyboard.TargetName="rect" Storyboard.TargetProperty="Width" To="400"></DoubleAnimation>
  11. <ColorAnimation Duration="0:0:1" Storyboard.TargetName="color" Storyboard.TargetProperty="Color" To="Cyan"></ColorAnimation>
  12. <DoubleAnimation Duration="0:0:1" Storyboard.TargetName="rect" Storyboard.TargetProperty="Height" To="400"></DoubleAnimation>
  13. </Storyboard>
  14. </BeginStoryboard>
  15. </EventTrigger.Actions>
  16. </EventTrigger>
  17. <EventTrigger RoutedEvent="MouseLeave">
  18. <EventTrigger.Actions>
  19. <BeginStoryboard>
  20. <Storyboard>
  21. <DoubleAnimation Duration="0:0:1" Storyboard.TargetName="rect" Storyboard.TargetProperty="Width" To="200"></DoubleAnimation>
  22. <ColorAnimation Duration="0:0:1" Storyboard.TargetName="color" Storyboard.TargetProperty="Color" To="Beige"></ColorAnimation>
  23. <DoubleAnimation Duration="0:0:1" Storyboard.TargetName="rect" Storyboard.TargetProperty="Height" To="200"></DoubleAnimation>
  24. </Storyboard>
  25. </BeginStoryboard>
  26. </EventTrigger.Actions>
  27. </EventTrigger>
  28. </Rectangle.Triggers>
  29. </Rectangle>

原文地址:https://www.cnblogs.com/lonelyxmas/p/12075531.html

时间: 2024-11-10 13:54:59

WPF 精修篇 属性动画的相关文章

WPF 精修篇 属性触发器

原文:WPF 精修篇 属性触发器 属性触发器是通过  某个条件触发改变属性 通过无代码实现功能 <Style TargetType="{x:Type Label}"> <Style.Triggers> <Trigger Property="IsMouseOver" Value="True"> <Setter Property="FontSize" Value="30"

WPF 精修篇 路径动画

原文:WPF 精修篇 路径动画 路径动画 是让一个对象围绕指定Path 的运动路径 进行移动的动画 举栗子 路径动画 使用 Blend 来设置 是十分简单的 首先用工具 笔  点出一条线 新建一个圆形对象 然后右键笔画出的路径 设置为运动路径 效果 可以把storyboard 设置成 Forever 这样就一直在循环运动 <Storyboard x:Key="Storyboard1" RepeatBehavior="Forever"> 原文地址:http

WPF 精修篇 依赖属性

原文:WPF 精修篇 依赖属性 依赖属性使用场景 1. 希望可在样式中设置属性. 2. 希望属性支持数据绑定. 3. 希望可使用动态资源引用设置属性. 4. 希望从元素树中的父元素自动继承属性值. 5. 希望属性可进行动画处理. 6. 希望属性系统在属性系统.环境或用户执行的操作或者读取并使用样式更改了属性以前的值时报告. 7. 希望使用已建立的.WPF 进程也使用的元数据约定,例如报告更改属性值时是否要求布局系统重新编写元素的可视化对象. 依赖属性生成 PropertyMetadata 后面可

WPF 精修篇 动画组TransformGroup

原文:WPF 精修篇 动画组TransformGroup 动画分组 TransformGroup 一个元素可能要有缩放 ScaleTransform和移动 TranslateTransform等多个效果组合 就需要分组 RenderTransformOrigin 中心点设置 "0.5,0.5" 为中间 在编辑器中  有设置 <Grid> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Widt

WPF 精修篇 多属性触发器

原文:WPF 精修篇 多属性触发器 多属性触发器就是多个属性都满足在触发 在属性触发器上加了一些逻辑判断 举栗子 这个栗子里  textBox 要满足俩个条件 才能触发背景变色 1)textbox的 IsEnabled 为true 2) Texbox获得焦点 <Window.Resources> <Style TargetType="{x:Type TextBox}"> <Style.Triggers> <MultiTrigger> &l

WPF 精修篇 数据绑定到对象

原文:WPF 精修篇 数据绑定到对象 数据绑定到对象 首先 我们需要一个对象 public class Preson { private string name; public string Name { get { return name; } set { name = value; } } private string address; public string Address { get { return address; } set { address = value; } } pri

WPF精修篇 多数据触发器

原文:WPF精修篇 多数据触发器 有多属性触发器 就有多数据触发器 <Grid> <CheckBox x:Name="c1" Content="许可协议1" HorizontalAlignment="Left" Margin="151,157,0,0" VerticalAlignment="Top"/> <CheckBox x:Name="c2" Conte

WPF 精修篇 附加属性

原文:WPF 精修篇 附加属性 微软把DLL都开源了  今天看了一下 很多WPF实现内容都在里面 https://referencesource.microsoft.com/ 说附加属性 附加属性 是全局属性 用来规范全局变量  等等~ 是也可以 给控件 单独增加属性功能 举栗子 给textbox 增加附加属性 并不会增加 到Textbox 类里 功能 按Tab的时候 会全选 textbox2的内容 增加了一个类 并使用 propa 定义了附加属性 public class TextChange

WPF 精修篇 用户控件

原文:WPF 精修篇 用户控件 增加用户控件 数据绑定还是用依赖属性 使用的事件 就委托注册一下 public delegate void ButtonClick(object b,EventArgs e); public event ButtonClick OnColorsClick ; private void Button_Click(object sender, RoutedEventArgs e) { if (OnColorsClick != null) { OnColorsClick