Timeline.BeginTime Свойство

Определение

Получает или задает время начала данной временной шкалы Timeline.Gets or sets the time at which this Timeline should begin.

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 родительского объекта.The time at which this Timeline should begin, relative to its parent's BeginTime. Если временная шкала является корневой, время указано относительно интерактивного времени начала (момента запуска этой временной шкалы).If this timeline is a root timeline, the time is relative to its interactive begin time (the moment at which the timeline was triggered). Это значение может быть положительным, отрицательным или null; значение null указывает, что временная шкала не будет воспроизводиться.This value may be positive, negative, or null; a null value means the timeline never plays. Значение по умолчанию равно нулю.The default value is zero.

Примеры

Свойство BeginTime временной шкалы определяет начало активного периода временной шкалы.A timeline's BeginTime property determines the beginning of a timeline's active period. Если временная шкала имеет родительскую временную шкалу, свойство BeginTime определяет время, затрачиваемое на запуск временной шкалы после начала ее родительского элемента.If the timeline has a parent timeline, the BeginTime property determines how long it takes the timeline to start after its parent starts. Если временная шкала является корневой временной шкалой (например, Storyboard), свойство BeginTime определяет время, необходимое для начала воспроизведения временной шкалы после его запуска.If the timeline is a root timeline (a Storyboard, for example), the BeginTime property determines how long the timeline takes to start playing after it is triggered.

В следующем примере показаны несколько разных временных шкал с разными параметрами BeginTime.The following example shows several different timelines with different BeginTime settings.

<!-- 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 последовательных временных шкал, использующих один и тот же родительский объект, можно запланировать время их воспроизведения.The BeginTime property is useful for creating timelines that play in a sequence: by increasing the BeginTime of successive timelines that share the same parent, you can stagger their play times.

Отрицательные значенияNegative Values

Отрицательное BeginTime значение приводит к тому, что Timeline будет вести себя так, как если бы он начался в определенный момент времени в прошлом.A negative BeginTime value causes a Timeline to behave as though it started at some time in the past. Например, Timeline с BeginTime отрицательным 2,5 секунд, а Duration 5 секунд — в начале работы.For example, a Timeline with a BeginTime of negative 2.5 seconds and a Duration of 5 seconds will appear to be half-way finished when it starts.

BeginTime и SpeedRatioBeginTime and SpeedRatio

Время, описываемое свойством BeginTime, измеряется в парент'с времени временной шкалы.The time described by the BeginTime property is measured in the timeline's parent's time. Например, временная шкала с BeginTime 5, родительский элемент которой имеет SpeedRatio 2 на самом деле начинается через 2,5 секунд.For example, a timeline with a BeginTime of 5 whose parent has a SpeedRatio of 2 actually starts after 2.5 seconds.

Параметр SpeedRatio временной шкалы не влияет на его BeginTime.A timeline's own SpeedRatio setting does not affect its BeginTime. Например, временная шкала с BeginTime 5 секунд, SpeedRatio 2 и родительской временной шкалой с SpeedRatio 1 начинается через 5 секунд, а не 2,5.For example, a timeline with a BeginTime of 5 seconds, a SpeedRatio of 2, and a parent timeline with a SpeedRatio of 1 starts after 5 seconds, not 2.5.

Сведения о свойстве зависимостейDependency Property Information

Поле идентификатораIdentifier field BeginTimeProperty
Для свойств метаданных задано значение trueMetadata properties set to true NoneNone

Использование атрибута XAMLXAML Attribute Usage

<объект BeginTime= "[-] [Days.] часы:минуты:секунды[.* Фрактионалсекондс*] "/><object BeginTime="[-][days.]hours:minutes:seconds[.fractionalSeconds]"/>

-или--or-

<объект BeginTime= "[-] [Days.] часы:минуты"/><object BeginTime="[-][days.]hours:minutes"/>

-или--or-

<объект BeginTime= "[-]дней"/><object BeginTime="[-]days"/>

-или--or-

<объект BeginTime= "{X:NULL расширение разметки}"/><object BeginTime="{x:Null Markup Extension}"/>

Значения XAMLXAML Values

Элементы в квадратных скобках ([ и ]) являются необязательными.Items in square brackets ([ and ]) are optional.

неделиdays
System.Int32

Значение, большее или равное 0, которое описывает число дней, охваченных этим временем начала.A value greater than or equal to 0 that describes the number of days spanned by this begin time.

hourshours
System.Int32

Значение от 0 до 23, представляющее количество часов, охваченных этим временем начала.A value between 0 and 23 that represents the number of hours spanned by this begin time.

minutesminutes
System.Int32

Значение от 0 до 59, представляющее количество минут, охваченных этим временем начала.A value between 0 and 59 that represents the number of minutes spanned by this begin time.

секундseconds
System.Int32

Значение от 0 до 59, представляющее количество секунд, охваченных этим временем начала.A value between 0 and 59 that represents the number of seconds spanned by this begin time.

фрактионалсекондсfractionalSeconds
System.Int32

Значение, состоящее из 1 – 7 цифр, представляющих доли секунды.A value consisting of 1 to 7 digits that represents fractional seconds.

Полный синтаксис TimeSpan см. в разделе "Примечания" на странице Parse.For the complete TimeSpan syntax, see the Remarks section of the Parse page.

Применяется к

Дополнительно