Timeline.SpeedRatio 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取或设置此 Timeline 的时间相对于其父级的前进速率。
public:
property double SpeedRatio { double get(); void set(double value); };
public double SpeedRatio { get; set; }
member this.SpeedRatio : double with get, set
Public Property SpeedRatio As Double
属性值
一个大于 0 的有限值,表示此时间线的时间相对于其父级的前进速率;如果此时间线为根时间线,则为默认时间线速度。 默认值为 1。
例外
SpeedRatio 小于 0 或并非有限值。
示例
时间线 SpeedRatio 的属性控制其进度速率,相对于其父级。 如果时间线是根,则其 SpeedRatio 相对于默认时间线速度。 以下示例显示了具有不同 SpeedRatio 设置的多个时间线。
<!-- 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>
注解
时间线的设置对其没有影响BeginTime;该时间相对于时间线SpeedRatio的父级,或者,如果时间线是根时间线,则时间线开始的时间点。
如果 AccelerationRatio 指定或 DecelerationRatio 指定,则这是 SpeedRatio 时间线的自然长度的平均比率。
依赖项属性信息
标识符字段 | SpeedRatioProperty |
元数据属性设置为 true |
无 |