帧动画实现很简单
<ImageBrush x:Key="speed_s" Stretch="Fill" ImageSource="/images/air/speed_s.png" /> <ImageBrush x:Key="speed_m" ImageSource="/images/air/speed_m.png" /> <ImageBrush x:Key="speed_l" ImageSource="/images/air/speed_l.png" /> <Storyboard x:Name="FrameAnim"> <ObjectAnimationUsingKeyFrames Duration="0:0:1.6" RepeatBehavior="Forever" Storyboard.TargetName="WindSpeedThumb" Storyboard.TargetProperty="Fill"> <DiscreteObjectKeyFrame KeyTime="0:0:0.4" Value="{StaticResource speed_s}" /> <DiscreteObjectKeyFrame KeyTime="0:0:0.8" Value="{StaticResource speed_m}" /> <DiscreteObjectKeyFrame KeyTime="0:0:1.2" Value="{StaticResource speed_l}" /> </ObjectAnimationUsingKeyFrames> </Storyboard> <Grid Margin="0,0,28,40" Width="98" Height="98" HorizontalAlignment="Right" VerticalAlignment="Bottom"> <!--<Image Width="35" Margin="0,10,0,0" Stretch="Uniform" VerticalAlignment="Top" Source="/images/air/direction_0.png" />--> <Rectangle x:Name="WindDirectionThumb" Width="35" Height="35" Margin="0,10,0,0" VerticalAlignment="Top" Fill="{StaticResource direction_0}" /> <pretty:PrettyButton x:Name="WindDirection" Margin="0,0,0,-7" Width="97" Height="55" VerticalAlignment="Bottom" PressedBrush="{StaticResource ac_winddirection_s}" NormalBrush="{StaticResource ac_winddirection_d}" /> </Grid>
代码中使用begin开始,stop结束动画
FrameAnim.Begin();
FrameAnim.Stop();