Timeline.BeginTime Özellik
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
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 null
olabilir; 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.