Mega Code Archive

 
Categories / VB.Net / WPF
 

Create animations using the Storyboard in code

<Window x:Class="WpfApplication1.StoryboardInCode"   xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"   xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"   Title="Storyboard Animation in Code" Height="300" Width="300">   <Canvas>     <Button Content="Button1" Width="150" Height="80"       Canvas.Left="50" Canvas.Top="20">       <Button.Background>         <SolidColorBrush x:Name="brush1" />       </Button.Background>     </Button>     <Button Content="Button2" Width="150" Height="80"       Canvas.Left="50" Canvas.Top="110">       <Button.Background>         <SolidColorBrush x:Name="brush2" />       </Button.Background>     </Button>   </Canvas> </Window> //File:Window.xaml.vb Imports System Imports System.Windows Imports System.Windows.Controls Imports System.Windows.Input Imports System.Windows.Media Imports System.Windows.Shapes Imports System.Windows.Media.Animation Namespace WpfApplication1   Public Partial Class StoryboardInCode     Inherits Window     Public Sub New()       InitializeComponent()       Dim sb As New Storyboard()       Dim ca1 As New ColorAnimation(Colors.Blue, Colors.Yellow, New Duration(New TimeSpan(0, 0, 10)))       ca1.RepeatBehavior = RepeatBehavior.Forever       ca1.AutoReverse = True       Storyboard.SetTargetName(ca1, "brush1")       Storyboard.SetTargetProperty(ca1, New PropertyPath(SolidColorBrush.ColorProperty))       Dim ca2 As New ColorAnimation(Colors.Red, Colors.Green, New Duration(New TimeSpan(0, 0, 10)))       ca2.RepeatBehavior = RepeatBehavior.Forever       ca2.AutoReverse = True       ca2.BeginTime = New TimeSpan(0, 0, 5)       Storyboard.SetTargetName(ca2, "brush2")       Storyboard.SetTargetProperty(ca2, New PropertyPath(SolidColorBrush.ColorProperty))       sb.Children.Add(ca1)       sb.Children.Add(ca2)       sb.Begin(Me)     End Sub   End Class End Namespace