Mega Code Archive

 
Categories / C# / WPF
 

A simple, finite animation

<Window x:Class="Holding.Window1"     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"     Title="FillingExample" Height="300" Width="300">   <Canvas>     <Ellipse Name="myEllipse" Height="100" Fill="Red">       <Ellipse.Triggers>         <EventTrigger RoutedEvent="Ellipse.Loaded">           <BeginStoryboard>             <Storyboard>               <DoubleAnimation BeginTime="0:0:2" Duration="0:0:5"                   Storyboard.TargetProperty="(Ellipse.Width)"                   From="10" To="300" />             </Storyboard>           </BeginStoryboard>         </EventTrigger>       </Ellipse.Triggers>     </Ellipse>   </Canvas> </Window> //File:Window.xaml.cs using System; using System.Windows; using System.Windows.Threading; using System.Diagnostics; namespace Holding {     public partial class Window1 : Window     {         DispatcherTimer t = new DispatcherTimer();         DateTime start;         public Window1()         {             InitializeComponent();             t.Tick += new EventHandler(OnTimerTick);             t.Interval = TimeSpan.FromSeconds(0.5);             t.Start();             start = DateTime.Now;         }         void OnTimerTick(object sender, EventArgs e)         {             TimeSpan elapsedTime = DateTime.Now - start;             Debug.WriteLine(elapsedTime.ToString() + ": " + myEllipse.Width);         }     } }