Timeline::SpeedRatio Property
Gets or sets the rate, relative to its parent, at which time progresses for this Timeline.
Assembly: PresentationCore (in PresentationCore.dll)
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.
Identifier field | |
Metadata properties set to true | None |
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>
Available since 3.0
Silverlight
Available since 2.0
Windows Phone Silverlight
Available since 7.0