Timeline.BeginTime Özellik

Tanım

Bunun Timeline başlaması gereken zamanı alır veya ayarlar.

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)

Özellik Değeri

Nullable<TimeSpan>

Bunun başlaması gereken saat Timeline , üst öğesinin BeginTimezamanına göre. Bu zaman çizelgesi bir kök zaman çizelgesiyse, zaman etkileşimli başlangıç zamanına göredir (zaman çizelgesinin tetiklendiği an). Bu değer pozitif, negatif veya nullolabilir; değer null zaman çizelgesinin hiçbir zaman oynatılmaması anlamına gelir. Varsayılan değer sıfırdır.

Örnekler

Zaman çizelgesinin BeginTime özelliği, zaman çizelgesinin etkin döneminin başlangıcını belirler. Zaman çizelgesinde üst zaman çizelgesi varsa, özelliği zaman çizelgesinin BeginTime üst zaman çizelgesi başlatıldıktan sonra ne kadar süreceğini belirler. Zaman çizelgesi bir kök zaman çizelgesiyse ( Storyboardörneğin, ) BeginTime özelliği zaman çizelgesinin tetiklendikten sonra yürütülmeye başlamasının ne kadar sürdüğünü belirler.

Aşağıdaki örnekte, farklı ayarlara sahip birkaç farklı BeginTime zaman çizelgesi gösterilmektedir.

<!-- 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>

Açıklamalar

BeginTime özelliği, bir sırayla oynatılan zaman çizelgeleri oluşturmak için kullanışlıdır: Aynı üst öğeyi BeginTime paylaşan ardışık zaman çizelgelerinin sayısını artırarak, bunların oyun sürelerini kademeli yapabilirsiniz.

Negatif Değerler

Negatif BeginTime bir değer, geçmişte bir Timeline zaman başlamış gibi davranmasına neden olur. Örneğin, Timeline BeginTime negatif 2,5 saniye ve 5 saniye içeren bir Duration , başladığında yarı yolda tamamlanmış gibi görünür.

BeginTime ve SpeedRatio

özelliği tarafından BeginTime açıklanan süre, zaman çizelgesinin üst öğesinin saatiyle ölçülür. Örneğin, üst öğesi 2 olan 5'lik bir BeginTime SpeedRatio zaman çizelgesi aslında 2,5 saniye sonra başlar.

Zaman çizelgesinin kendi SpeedRatio ayarı ayarını BeginTimeetkilemez. Örneğin, 5 saniyelik bir BeginTime zaman çizelgesi, 2'lik bir SpeedRatio zaman çizelgesi ve 1 içeren üst SpeedRatio zaman çizelgesi 2,5 değil 5 saniye sonra başlar.

Bağımlılık Özelliği Bilgileri

Tanımlayıcı alanı BeginTimeProperty
Meta veri özellikleri olarak ayarlandı true Hiçbiri

XAML Öznitelik Kullanımı

<object BeginTime="[-][gün.] hours:minutes:seconds[.fractionalSeconds]"/>

-veya-

<object BeginTime="[-][gün.] hours:minutes"/>

-veya-

<object BeginTime="[-]days"/>

-veya-

<object BeginTime="{x:Null biçimlendirme uzantısı}"/>

XAML Değerleri

Köşeli ayraç ([ ve ]) içindeki öğeler isteğe bağlıdır.

Gün
System.Int32

Bu başlangıç saati tarafından yayılan gün sayısını açıklayan 0'dan büyük veya 0'a eşit bir değer.

Saat
System.Int32

Bu başlangıç saati tarafından yayılan saat sayısını temsil eden 0 ile 23 arasında bir değer.

Dakika
System.Int32

Bu başlangıç saati tarafından yayılan dakika sayısını temsil eden 0 ile 59 arasında bir değer.

Saniye
System.Int32

0 ile 59 arasında, bu başlangıç saati tarafından yayılan saniye sayısını temsil eden bir değer.

fractionalSeconds
System.Int32

Kesirli saniyeleri temsil eden 1 ile 7 basamak arası bir değer.

Söz diziminin tamamı TimeSpan için sayfanın Açıklamalar bölümüne Parse bakın.

Şunlara uygulanır

Ayrıca bkz.