DoubleAnimation Loop for 30 seconds
<Window x:Class="WpfApplication1.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="AnimatedLabel" Height="498" Width="530" WindowStartupLocation="CenterScreen" > <StackPanel> <Button Content ="Animate Height" Click ="btnAnimatelblMessage_Click" /> <Label Name ="lblHeight" Content ="Animate Height!"/> <Button Content ="Animate Transparency" Click ="btnAnimatelblTransparency_Click"/> <Label Background ="Cornsilk" Name ="lblTransparency" Content ="Animate Transparency!"/> </StackPanel> </Window> //File:Window.xaml.cs using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Navigation; using System.Windows.Shapes; using System.Windows.Media.Animation; namespace WpfApplication1 { public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); } protected void btnAnimatelblMessage_Click(object sender, RoutedEventArgs args) { DoubleAnimation dblAnim = new DoubleAnimation(); dblAnim.From = 40; dblAnim.To = 200; dblAnim.AutoReverse = true; dblAnim.RepeatBehavior = new RepeatBehavior(TimeSpan.FromSeconds(30)); dblAnim.Duration = new Duration(TimeSpan.FromSeconds(4)); lblHeight.BeginAnimation(Label.HeightProperty, dblAnim); } protected void btnAnimatelblTransparency_Click(object sender, RoutedEventArgs args) { DoubleAnimation dblAnim = new DoubleAnimation(); dblAnim.From = 1.0; dblAnim.To = 0.0; dblAnim.Duration = new Duration(TimeSpan.FromSeconds(10)); lblTransparency.BeginAnimation(Label.OpacityProperty, dblAnim); } } }