WPF C# Tutorial

    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="Concentric Rings" Width="910" Height="512">
  

//File:Window.xaml.cs
using System;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Media;
using System.Windows.Shapes;
using System.Windows.Media.Animation;
namespace _360Timer
{
    public partial class Window1 : Window
    {
         public Window1()
        {
            InitializeComponent();
            this.Show();
            for (int i = 0; i < 24; ++i)
            {
                Ellipse e = new Ellipse();
                e.Stroke = new SolidColorBrush(Color.FromArgb(5, 2, 200, 100));
                e.StrokeThickness = 20;
                e.Width = 10.0;
                e.Height = 20.0;
                this.MainCanvas.Children.Add(e);                
                e.SetValue(Canvas.LeftProperty, 300);
                e.SetValue(Canvas.TopProperty, 400);
                double duration = 6.0 ;
                double delay = 1.0 ;
                TranslateTransform offsetTransform = new TranslateTransform();
                
                DoubleAnimation offsetXAnimation = new DoubleAnimation(0.0, -256.0, new Duration(TimeSpan.FromSeconds(duration)));
                offsetXAnimation.RepeatBehavior = RepeatBehavior.Forever;
                offsetXAnimation.BeginTime = TimeSpan.FromSeconds(delay);
                offsetTransform.BeginAnimation(TranslateTransform.XProperty, offsetXAnimation);
                offsetTransform.BeginAnimation(TranslateTransform.YProperty, offsetXAnimation);
                e.RenderTransform = offsetTransform;
            }
        }
    }
}