Mega Code Archive

 
Categories / C# / WPF
 

Remove Animations with Storyboard

<Window x:Class="WpfApplication1.Window1"   xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"   xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"   Title="" Height="300" Width="300">   <Window.Resources>     <Storyboard x:Key="Storyboard1">       <ParallelTimeline>         <DoubleAnimation x:Name="Animation1" Storyboard.TargetProperty="Width" From="140" To="50"           AutoReverse="True" RepeatBehavior="Forever" />         <DoubleAnimation Storyboard.TargetProperty="Opacity" To="0.5" AutoReverse="True" RepeatBehavior="Forever" />       </ParallelTimeline>     </Storyboard>   </Window.Resources>   <UniformGrid>     <Button Content="Method 4" Click="Button4_Click" Loaded="Button4_Loaded" />   </UniformGrid> </Window> //File:Window.xaml.cs using System; using System.Windows; using System.Windows.Controls; using System.Windows.Media.Animation; namespace WpfApplication1 {     public partial class Window1 : Window     {         public Window1()         {             InitializeComponent();         }         private Storyboard method4Storyboard;         private void Button4_Loaded(object sender, RoutedEventArgs e)         {             method4Storyboard = TryFindResource("Storyboard1") as Storyboard;             method4Storyboard.Begin(sender as FrameworkElement, true);         }         private void Button4_Click(object sender, RoutedEventArgs e)         {             if (method4Storyboard != null)             {                 method4Storyboard.Remove(sender as FrameworkElement);             }         }           } }