wpf动画
时间: 2023-07-30 19:06:13 浏览: 46
WPF(Windows Presentation Foundation)提供了一系列强大的动画功能,可以轻松地创建各种动态效果。以下是几个常见的WPF动画:
1. 透明度动画:可以通过改变元素的不透明度来创建淡入淡出效果。
```xaml
<Canvas>
<Ellipse x:Name="myEllipse" Fill="Blue" Width="50" Height="50" Canvas.Left="0" Canvas.Top="0"/>
<Button x:Name="myButton" Content="Animate" Width="100" Height="30" Canvas.Left="0" Canvas.Top="60">
<Button.Triggers>
<EventTrigger RoutedEvent="Button.Click">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetName="myEllipse" Storyboard.TargetProperty="Opacity" From="0" To="1" Duration="0:0:3"/>
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Button.Triggers>
</Button>
</Canvas>
```
2. 位移动画:可以通过改变元素的位置来创建移动效果。
```xaml
<Canvas>
<Ellipse x:Name="myEllipse" Fill="Blue" Width="50" Height="50" Canvas.Left="0" Canvas.Top="0"/>
<Button x:Name="myButton" Content="Animate" Width="100" Height="30" Canvas.Left="0" Canvas.Top="60">
<Button.Triggers>
<EventTrigger RoutedEvent="Button.Click">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetName="myEllipse" Storyboard.TargetProperty="(Canvas.Left)" To="200" Duration="0:0:3"/>
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Button.Triggers>
</Button>
</Canvas>
```
3. 缩放动画:可以通过改变元素的大小来创建缩放效果。
```xaml
<Canvas>
<Ellipse x:Name="myEllipse" Fill="Blue" Width="50" Height="50" Canvas.Left="0" Canvas.Top="0"/>
<Button x:Name="myButton" Content="Animate" Width="100" Height="30" Canvas.Left="0" Canvas.Top="60">
<Button.Triggers>
<EventTrigger RoutedEvent="Button.Click">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetName="myEllipse" Storyboard.TargetProperty="Width" To="100" Duration="0:0:3"/>
<DoubleAnimation Storyboard.TargetName="myEllipse" Storyboard.TargetProperty="Height" To="100" Duration="0:0:3"/>
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Button.Triggers>
</Button>
</Canvas>
```
这些只是WPF动画的一小部分,WPF还提供了许多其他类型的动画,例如旋转、颜色、路径等。通过使用Storyboard和DoubleAnimation、ColorAnimation、PointAnimation等动画类,开发者可以轻松地创建各种动态效果。