WPF中的故事板
1. 事件触发器
<StackPanel>
<Button x:Name="Button1" Margin="15" Height="25" Width="75" Click="Button1_Click_1">
Button
<Button.Triggers>
<EventTrigger RoutedEvent="Button.Click">
<EventTrigger.Actions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetProperty="Width"
From="160" To="300" Duration="0:0:5">
</DoubleAnimation>
</Storyboard>
</BeginStoryboard>
</EventTrigger.Actions>
</EventTrigger>
</Button.Triggers>
</Button>
</StackPanel>

2. 使用样式关联触发器
<Window.Resources>
<Style x:Key="StyleButton">
<Style.Triggers>
<Trigger Property="Button.IsPressed" Value="True">
<Trigger.EnterActions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetProperty="Width"
From="160" To="300" Duration="0:0:5">
</DoubleAnimation>
</Storyboard>
</BeginStoryboard>
</Trigger.EnterActions>
</Trigger>
</Style.Triggers>
</Style>
</Window.Resources>
<StackPanel>
<Button x:Name="Button1" Margin="15" Height="25" Width="75" Click="Button1_Click_1"
Style="{StaticResource StyleButton}">
Button
</Button>
</StackPanel>

3. 同步的动画
<Window.Resources>
<Style x:Key="StyleButton">
<Style.Triggers>
<Trigger Property="Button.IsPressed" Value="True">
<Trigger.EnterActions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetProperty="Width"
From="160" To="300" Duration="0:0:5">
</DoubleAnimation>
<DoubleAnimation Storyboard.TargetProperty="Height" FillBehavior="Stop"
From="20" To="200" Duration="0:0:2" BeginTime="0:0:3" SpeedRatio="1.5">
</DoubleAnimation>
</Storyboard>
</BeginStoryboard>
</Trigger.EnterActions>
</Trigger>
</Style.Triggers>
</Style>
</Window.Resources>
<StackPanel>
<Button x:Name="Button1" Margin="15" Height="25" Width="75" Click="Button1_Click_1"
Style="{StaticResource StyleButton}">
Button
</Button>
</StackPanel>
