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 будет вести себя так, как если бы он был запущен в некоторое время в прошлом. Например, Timeline с отрицательным значением BeginTime 2,5 секунды и Duration 5 секунд будет по-видимому завершено на полпути при запуске.
BeginTime и SpeedRatio
Время, описываемое свойством BeginTime , измеряется в родительском времени временной шкалы. Например, временная шкала со значением BeginTime 5, родительский SpeedRatio объект которой имеет значение 2, фактически начинается через 2,5 секунды.
Собственный SpeedRatio параметр временной шкалы не влияет на ее BeginTime. Например, временная шкала BeginTime с 5 секундами, SpeedRatio 2 и родительская временная шкала SpeedRatio с 1 начинается через 5 секунд, а не через 2,5.
Сведения о свойстве зависимостей
Поле идентификатора | BeginTimeProperty |
Для свойств метаданных задано значение true |
Нет |
Использование атрибута XAML
<ОбъектаBeginTime ="[-][days.] hours:minutes:seconds[. fractionalSeconds]"/>
-или-
<ОбъектаBeginTime ="[-][days.] hours:minutes"/>
-или-
<ОбъектаBeginTime ="[-]days"/>
-или-
<ОбъектаBeginTime ="{x:Null Markup Extension}"/>
Значения XAML
Элементы в квадратных скобках ([
и ]
) являются необязательными.
days
System.Int32
Значение, большее или равное 0, которое описывает количество дней, охватываемых этим начальным временем.
hours
System.Int32
Значение от 0 до 23, представляющее количество часов, охватываемых этим временем начала.
minutes
System.Int32
Значение от 0 до 59, представляющее количество минут, отсчитываемых на это время начала.
секунд
System.Int32
Значение от 0 до 59, представляющее количество секунд, отсчитываемых на это время начала.
fractionalSeconds
System.Int32
Значение, состоящее из 1–7 цифр, представляющее доли секунды.
Полный TimeSpan синтаксис см. в разделе Примечания страницы Parse .
Применяется к
См. также раздел
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по