WPF中的控制播放
1. 控制故事板的动作类
<Window x:Class="项目10.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
xmlns:local="clr-namespace:项目10"
mc:Ignorable="d"
Title="MainWindow" Width="500" Height="450"
WindowStartupLocation="CenterScreen">
<Window.Triggers>
<EventTrigger SourceName="ButtonStart" RoutedEvent="Button.Click">
<BeginStoryboard Name="StoryboardFade">
<Storyboard>
<DoubleAnimation Storyboard.TargetName="ImageDay"
Storyboard.TargetProperty="Opacity"
From="1" To="0" Duration="0:0:10"> </DoubleAnimation>
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Window.Triggers>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
</Grid.RowDefinitions>
<Grid>
<Image Source="Images/Chrysanthemum.jpg"></Image>
<Image Source="Images/Jellyfish.jpg"
x:Name="ImageDay"></Image>
</Grid>
<StackPanel Grid.Row="1" Orientation="Horizontal">
<Button x:Name="ButtonStart" Margin="15" Padding="10 5" Click="ButtonStart_Click">开始渐变</Button>
</StackPanel>
</Grid>
</Window>

2. 暂停动画及进度监视
<Window x:Class="项目10.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
xmlns:local="clr-namespace:项目10"
mc:Ignorable="d"
Title="MainWindow" Width="500" Height="500"
WindowStartupLocation="CenterScreen">
<Window.Triggers>
<EventTrigger SourceName="ButtonStart" RoutedEvent="Button.Click">
<BeginStoryboard Name="StoryboardFade">
<Storyboard CurrentTimeInvalidated="Timeline_OnCurrentTimeInvalidated">
<DoubleAnimation Storyboard.TargetName="ImageDay"
Storyboard.TargetProperty="Opacity"
From="1" To="0" Duration="0:0:10"></DoubleAnimation>
</Storyboard>
</BeginStoryboard>
</EventTrigger>
<EventTrigger SourceName="ButtonPause" RoutedEvent="Button.Click">
<PauseStoryboard BeginStoryboardName="StoryboardFade">
</PauseStoryboard>
</EventTrigger>
<EventTrigger SourceName="ButtonResume" RoutedEvent="Button.Click">
<ResumeStoryboard BeginStoryboardName="StoryboardFade"></ResumeStoryboard>
</EventTrigger>
<EventTrigger SourceName="ButtonStop" RoutedEvent="Button.Click">
<StopStoryboard BeginStoryboardName="StoryboardFade"></StopStoryboard>
</EventTrigger>
</Window.Triggers>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
</Grid.RowDefinitions>
<Grid>
<Image Source="Images/Chrysanthemum.jpg"></Image>
<Image Source="Images/Jellyfish.jpg"
x:Name="ImageDay"></Image>
</Grid>
<StackPanel Grid.Row="1" Orientation="Horizontal" HorizontalAlignment="Center">
<Button x:Name="ButtonStart" Margin="15" Padding="10 5">开始渐变</Button>
<Button x:Name="ButtonPause" Margin="15" Padding="10 5">暂停渐变</Button>
<Button x:Name="ButtonResume" Margin="15" Padding="10 5">恢复渐变</Button>
<Button x:Name="ButtonStop" Margin="15" Padding="10 5">停止渐变</Button>
</StackPanel>
<ProgressBar Grid.Row="2" Margin="5" Height="12" x:Name="ProgressBar1" Minimum="0" Maximum="1"></ProgressBar>
</Grid>
</Window>
