Aracılığıyla paylaş


Timeline.BeginTime Özellik

Tanım

Bu 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

Bu Timeline başlaması gereken zaman, üst öğesinin BeginTimegö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; null değeri, zaman çizelgesinin hiçbir zaman oynatılamaması 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, BeginTime özelliği, üst zaman çizelgesi başlatıldıktan sonra zaman çizelgesinin ne kadar süreyle başlatıldığını belirler. Zaman çizelgesi bir kök zaman çizelgesiyse (örneğin, Storyboard), 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ı BeginTime ayarlarına sahip birkaç farklı 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 paylaşan ardışık zaman çizelgelerinin BeginTime artırarak, bunların oyun sürelerini artırabilirsiniz.

Negatif Değerler

Negatif BeginTime değeri, Timeline geçmişte bir zaman başlamış gibi davranmasına neden olur. Örneğin, negatif 2,5 saniyelik BeginTime ve 5 saniyelik Duration sahip bir Timeline başlatıldığında yarı yolda tamamlanmış gibi görünür.

BeginTime ve SpeedRatio

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

Zaman çizelgesinin kendi SpeedRatio ayarı, BeginTimeetkilemez. Örneğin, BeginTime 5 saniye, SpeedRatio 2 olan bir zaman çizelgesi ve SpeedRatio 1 olan üst 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 true olarak ayarlandı Hiç kimse

XAML Öznitelik Kullanımı

< nesnesiBeginTime="[-][gün.]saat:dakika:saniye[.kesirli]"/>

-veya-

< nesnesiBeginTime="[-][gün.]saat:dakika"/>

-veya-

< nesnesiBeginTime="[-]gün"/>

-veya-

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

XAML Değerleri

Köşeli ayraç içindeki öğeler ([ ve ]) 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

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

kesirliSaniye
System.Int32

Kesirli saniyeleri temsil eden 1 ile 7 basamakları içeren bir değer.

tam TimeSpan söz dizimi için Parse sayfasının Açıklamalar bölümüne bakın.

Şunlara uygulanır

Ayrıca bkz.