Timeline.BeginTime Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает или задает время начала этого Timeline действия.
public:
property Nullable<TimeSpan> BeginTime { Nullable<TimeSpan> get(); void set(Nullable<TimeSpan> value); };
public TimeSpan? BeginTime { get; set; }
member this.BeginTime : Nullable<TimeSpan> with get, set
Public Property BeginTime As Nullable(Of TimeSpan)
Значение свойства
Время, с которого это Timeline должно начинаться, относительно родительского BeginTimeэлемента. Если эта временная шкала является корневой временной шкалой, время относительно интерактивного времени начала (момент запуска временной шкалы). Это значение может быть положительным, отрицательным или null; null значение означает, что временная шкала никогда не воспроизводится. Значение по умолчанию равно нулю.
Примеры
Свойство временной шкалы BeginTime определяет начало активного периода временной шкалы. Если временная шкала имеет родительскую временную шкалу, BeginTime свойство определяет, сколько времени занимает временная шкала после ее родительского запуска. Если временная шкала является корневой временной шкалой ( Storyboardнапример, например), BeginTime свойство определяет, сколько времени занимает временная шкала, чтобы начать воспроизведение после его активации.
В следующем примере показаны несколько разных временных шкал с различными BeginTime параметрами.
<!-- This example shows how the BeginTime property determines when a timeline starts.
Several rectangles are animated by DoubleAnimations with identical
durations and target values, but with different
BeginTime settings. -->
<Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
WindowTitle="BeginTime Example">
<StackPanel Margin="20">
<!-- The rectangles to animate. -->
<Rectangle Name="DefaultBeginTimeRectangle"
Width="20" Height="20" Fill="Blue" />
<Rectangle Name="DelayedBeginTimeRectangle"
Width="20" Height="20" Fill="Blue" />
<Rectangle Name="DelayedAnimationWithDelayedParentRectangle"
Width="20" Height="20" Fill="Blue" />
<Rectangle Name="NegativeBeginTimeExampleRectangle"
Width="20" Height="20" Fill="Blue" />
<!-- Create a button to start the animations. -->
<Button Margin="20" Content="Start Animations">
<Button.Triggers>
<EventTrigger RoutedEvent="Button.Click">
<BeginStoryboard>
<Storyboard>
<!-- This animation starts as soon as the button is clicked, because it
has a BeginTime of 0. -->
<DoubleAnimation
Storyboard.TargetName="DefaultBeginTimeRectangle"
Storyboard.TargetProperty="Width"
BeginTime="0:0:0" From="100" To="600" Duration="0:0:5" />
<!-- This animation starts 5 seconds after the button is clicked. -->
<DoubleAnimation
Storyboard.TargetName="DelayedBeginTimeRectangle"
Storyboard.TargetProperty="Width"
BeginTime="0:0:5" From="100" To="600" Duration="0:0:5" />
<ParallelTimeline BeginTime="0:0:5">
<!-- This animation starts 10 seconds after the button is clicked,
because its parent has a BeginTime of 5 seconds and it has
a BeginTime of 5 seconds: 5 + 5 = 10. -->
<DoubleAnimation
Storyboard.TargetName="DelayedAnimationWithDelayedParentRectangle"
Storyboard.TargetProperty="Width"
BeginTime="0:0:5" From="100" To="600" Duration="0:0:5" />
</ParallelTimeline>
<!-- This animation starts as soon as the button is clicked, but
it animates from 350 to 600 instead of from 100 to 600
because of its negative BeginTime. The negative BeginTime
setting advances the animation, so that it behaves as though
it had already been playing for 2.5 seconds as soon as it is
started. -->
<DoubleAnimation
Storyboard.TargetName="NegativeBeginTimeExampleRectangle"
Storyboard.TargetProperty="Width"
BeginTime="-0:0:2.5" From="100" To="600" Duration="0:0:5" />
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Button.Triggers>
</Button>
<!-- This example demonstrates how the BeginTime property works on a root timeline. -->
<Rectangle Name="RootTimelineWithDelayedBeginTimeRectangle"
Width="20" Height="20" Fill="Blue" >
<Rectangle.Triggers>
<EventTrigger RoutedEvent="Rectangle.MouseLeftButtonDown">
<BeginStoryboard>
<Storyboard BeginTime="0:0:5">
<!-- This animation starts 5 seconds after the left mouse button
is pressed, because its parent storyboard (a root timeline)
has a BeginTime of 5 seconds. -->
<DoubleAnimation
Storyboard.TargetName="RootTimelineWithDelayedBeginTimeRectangle"
Storyboard.TargetProperty="Width"
BeginTime="0:0:0" From="100" To="600" Duration="0:0:2" />
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Rectangle.Triggers>
</Rectangle>
</StackPanel>
</Page>
Комментарии
Свойство BeginTime полезно для создания временных шкал, которые играют в последовательности: увеличивая BeginTime последовательные временные шкалы, которые совместно используют один и тот же родительский объект, можно ошеломить время воспроизведения.
Отрицательные значения
Отрицательное BeginTime значение вызывает Timeline поведение, как будто оно началось в некоторое время в прошлом. Например, с BeginTime отрицательным значением 2,5 секунд и Duration 5 секунд, как представляется, Timeline будет завершено на полпути при запуске.
BeginTime и SpeedRatio
Время, описанное свойством BeginTime , измеряется в течение родительского времени временной шкалы. Например, временная шкала с BeginTime 5, родитель которой имеет SpeedRatio 2 фактически начинается через 2,5 секунды.
Собственный SpeedRatio параметр временной шкалы не влияет на его BeginTime. Например, временная шкала с BeginTime 5 секунд, SpeedRatio 2 и родительская временная шкала SpeedRatio с 1 начинается через 5 секунд, а не 2,5.
Сведения о свойстве зависимостей
| Элемент | Ценность |
|---|---|
| Поле идентификатора | BeginTimeProperty |
Свойства метаданных, равные свойству true |
Никакой |
Использование атрибута XAML
< ОбъектаBeginTime="[-][дни.]hours:minutes:seconds[.fractionalSeconds]"/>
-или-
< ОбъектаBeginTime="[-][дни.]hours:minutes"/>
-или-
< ОбъектаBeginTime="[-]days"/>
-или-
< ОбъектаBeginTime="{расширение разметки NULL}"/>
Значения XAML
Элементы в квадратных скобках ([ и ]) являются необязательными.
ДнейSystem.Int32
Значение больше или равно 0, описывающее количество дней, охватываемых этим временем начала.
ЧасовSystem.Int32
Значение от 0 до 23, представляющее количество часов, охватываемых этим временем начала.
МинутSystem.Int32
Значение от 0 до 59, представляющее количество минут, охватываемых этим временем начала.
товары второго сортаSystem.Int32
Значение от 0 до 59, представляющее количество секунд, охватываемых этим временем начала.
fractionalSecondsSystem.Int32
Значение, состоящее из 1–7 цифр, представляющих дробные секунды.
Полный синтаксис см. в разделе Parse "ПримечанияTimeSpan" страницы.