Timeline.SpeedRatio Property
Gets or sets the rate, relative to its parent, at which time progresses for this Timeline.
Namespace: System.Windows.Media.Animation
Assembly: PresentationCore (in PresentationCore.dll)
XMLNS for XAML: http://schemas.microsoft.com/winfx/2006/xaml/presentation, http://schemas.microsoft.com/netfx/2007/xaml/presentation
<object SpeedRatio="double" .../>
Property Value
Type: System.DoubleA finite value greater than 0 that describes the rate at which time progresses for this timeline, relative to the speed of the timeline's parent or, if this is a root timeline, the default timeline speed. The default value is 1.
| Exception | Condition |
|---|---|
| ArgumentException | SpeedRatio is less than 0 or is not a finite value. |
A timeline's SpeedRatio setting does not have an effect on its BeginTime; that time is relative to the timeline's parent or, if the timeline is a root timeline, the moment at which the timeline's clock was begun.
If AccelerationRatio or DecelerationRatio are specified, this SpeedRatio is the average ratio over the natural length of the timeline.
A timeline's SpeedRatio property controls its rate of progress, relative to its parent. If the timeline is a root, its SpeedRatio is relative to the default timeline speed. The following example shows several timelines with different SpeedRatio settings.
<!-- This example shows how to use the SpeedRatio property to make animations speed up or slow down. --> <Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" WindowTitle="Speed Example"> <StackPanel> <!-- The rectangles to animate. --> <Rectangle Name="DefaultSpeedRectangle" Width="20" Height="20" Fill="Blue" /> <Rectangle Name="FasterRectangle" Width="20" Height="20" Fill="Blue" /> <Rectangle Name="SlowerRectangle" Width="20" Height="20" Fill="Blue" /> <Rectangle Name="NestedTimelinesExampleRectangle" Width="20" Height="20" Fill="Blue" /> <!-- Create a button to start the animations. --> <Button Margin="0,30,0,0" HorizontalAlignment="Left">Start Animations <Button.Triggers> <EventTrigger RoutedEvent="Button.Click"> <BeginStoryboard> <Storyboard> <!-- This animation progresses at the same rate as its parent. --> <DoubleAnimation Storyboard.TargetName="DefaultSpeedRectangle" Storyboard.TargetProperty="Width" From="20" To="400" Duration="0:0:2" SpeedRatio="1" /> <!-- This animation progresses twice as fast as its parent. --> <DoubleAnimation Storyboard.TargetName="FasterRectangle" Storyboard.TargetProperty="Width" From="20" To="400" Duration="0:0:2" SpeedRatio="2" /> <!-- This animation progresses at half the rate of its parent. --> <DoubleAnimation Storyboard.TargetName="SlowerRectangle" Storyboard.TargetProperty="Width" From="20" To="400" Duration="0:0:2" SpeedRatio="0.5" /> <ParallelTimeline SpeedRatio="2"> <ParallelTimeline SpeedRatio="2"> <!-- This animation progresses eight times faster than normal, because of its SpeedRatio settings and the SpeedRatio settings on its parents. --> <DoubleAnimation Storyboard.TargetName="NestedTimelinesExampleRectangle" Storyboard.TargetProperty="Width" From="20" To="400" Duration="0:0:2" SpeedRatio="2" /> </ParallelTimeline> </ParallelTimeline> </Storyboard> </BeginStoryboard> </EventTrigger> </Button.Triggers> </Button> </StackPanel> </Page>
Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.