ARTICLE

How to Start,Stop,Pause and Resume animation to a Ellipse in WPF using VB.NET

Posted by Shalini Juneja Articles | WPF using VB.NET May 26, 2011
In this article you will learn that how can you animate a ellipse in different manners.
Download Files:
 
Reader Level:

Introduction

Here in this article we are discussing that how you can give animation to shapes in WPF. We have taken an ellipse on storyboard and some buttons like start, Pause, Resume, Leave to fill and stop for showing animation. We have coloured  ellipse with RadialGradientBrush. when we click start button animation in ellipse will start. Like start we can pause, resume and stop animation in the ellipse. The implementation of example needs Ellipse, StackPanel, RadialGradientBrush, Button and StoryBoard.

Getting Started

  • Simply create a new WPF application. 
  • Drag a StackPanel, Ellipse and Button control on MainWindow. Your Window will look like below.

    animate1.gif
     
  • Your MainWindow.xaml page will look like below.

    <Window x:Class="MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="297" Width
    ="366">
        <StackPanel Margin="15" Height="237" Width="321">
            <Ellipse Name="ellipse" Width="150" Height="142">
                <Ellipse.Fill>
                    <RadialGradientBrush>
                        <GradientStop Color="Pink" Offset="0" />
                        <GradientStop Color="White" Offset="0.1" />
                        <GradientStop Color="SkyBlue" Offset="0.9" />
                        <GradientStop Color="Yellow" Offset="1" />
                    </RadialGradientBrush>
                </Ellipse.Fill>
            </Ellipse>
            <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" Margin="0,20,0,0">
                <Button Name="butnStart">Start</Button>
                <Button Name="butnPause">Pause</Button>
                <Button Name="butnResume">Resume</Button>
            </StackPanel>
            <StackPanel Orientation="Horizontal" HorizontalAlignment="Center">
                <Button Name="butnLeaveToFill">Leave To Fill</Button>
                <Button Name="butnStop">Stop</Button>
            </StackPanel>
            <StackPanel.Triggers>
                <EventTrigger RoutedEvent="Button.Click"
            SourceName="butnStart">
                    <EventTrigger.Actions>
                        <BeginStoryboard Name="MyFirstStoryboard"/>
                            <Storyboard>
                             <DoubleAnimation
                    Storyboard.TargetName="ellipse"
                    Storyboard.TargetProperty="Fill.RadiusX" From="0" To="1"
                    Duration="0:0:3" RepeatBehavior="5x" /> 
                         
    </Storyboard>
                        </BeginStoryboard>
                    </EventTrigger.Actions>
                </EventTrigger>
                <EventTrigger RoutedEvent="Button.Click" SourceName="butnPause">
                    <PauseStoryboard BeginStoryboardName="MyFirstStoryboard" />
                </EventTrigger>
                <EventTrigger RoutedEvent="Button.Click" SourceName="butnResume">
                    <ResumeStoryboard BeginStoryboardName="MyFirstStoryboard" />
                </EventTrigger>
                <EventTrigger RoutedEvent="Button.Click" SourceName="butnLeaveToFill">
                    <SkipStoryboardToFill BeginStoryboardName="MyFirstStoryboard" />
                </EventTrigger>
                <EventTrigger RoutedEvent="Button.Click" SourceName="butnStop">
                    <StopStoryboard BeginStoryboardName="MyFirstStoryboard" />
                </EventTrigger>
            </StackPanel.Triggers>
        </StackPanel>
    </
    Window>
     
  • Now run your application.


Output

animate2.gif

animate3.gif

animate4.gif

animate5.gif

animate6.gif

animate7.gif

Summary

In this article you learned that how you can give animation to the shapes.

Login to add your contents and source code to this article
share this article :
post comment
 

its only westing of time.....!!

Posted by tosif khan Nov 04, 2011
6 Months Free & No Setup Fees ASP.NET Hosting!
Become a Sponsor
PREMIUM SPONSORS
  • Finally – a virtual platform that delivers next-generation Windows Server 2008 Hyper-V virtualization technology from a managed hosting partner you can truly depend on. Visit www.maximumasp.com/max for a FREE 30 day trial. Hurry offer ends soon. Climb aboard the MaxV platform and take advantage of High Availability, Intelligent Monitoring, Recurrent Backups, and Scalability – with no hassle or hidden fees. As a managed hosting partner focused solely on Microsoft technologies since 2000, MaximumASP is uniquely qualified to provide the superior support that our business is built on. Unparalleled expertise with Microsoft technologies lead to working directly with Microsoft as first to offer IIS 7 and SQL 2008 betas in a hosted environment; partnering in the Go Live Program for Hyper-V; and product co-launches built on WS 2008 with Hyper-V technology.
    Finally – a virtual platform that delivers next-generation Windows Server 2008 Hyper-V virtualization technology from a managed hosting partner you can truly depend on. Visit www.maximumasp.com/max for a FREE 30 day trial. Hurry offer ends soon. Climb aboard the MaxV platform and take advantage of High Availability, Intelligent Monitoring, Recurrent Backups, and Scalability – with no hassle or hidden fees. As a managed hosting partner focused solely on Microsoft technologies since 2000, MaximumASP is uniquely qualified to provide the superior support that our business is built on. Unparalleled expertise with Microsoft technologies lead to working directly with Microsoft as first to offer IIS 7 and SQL 2008 betas in a hosted environment; partnering in the Go Live Program for Hyper-V; and product co-launches built on WS 2008 with Hyper-V technology.
6 Months Free & No Setup Fees ASP.NET Hosting!
Become a Sponsor