Timeline.BeginTime Properti
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mendapatkan atau mengatur waktu di mana Timeline ini harus dimulai.
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)
Nilai Properti
Waktu di mana Timeline ini harus dimulai, relatif terhadap BeginTimeinduknya . Jika garis waktu ini adalah garis waktu akar, waktu relatif terhadap waktu mulai interaktifnya (saat di mana garis waktu dipicu). Nilai ini mungkin positif, negatif, atau null
; nilai null
berarti garis waktu tidak pernah diputar. Nilai defaultnya adalah nol.
Contoh
Properti BeginTime garis waktu menentukan awal periode aktif garis waktu. Jika garis waktu memiliki garis waktu induk, properti BeginTime menentukan berapa lama waktu yang dibutuhkan garis waktu untuk memulai setelah induknya dimulai. Jika garis waktu adalah garis waktu akar (Storyboard, misalnya), properti BeginTime menentukan berapa lama waktu yang dibutuhkan untuk mulai diputar setelah dipicu.
Contoh berikut menunjukkan beberapa garis waktu yang berbeda dengan pengaturan BeginTime yang berbeda.
<!-- 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>
Keterangan
Properti BeginTime berguna untuk membuat garis waktu yang dimainkan secara berurutan: dengan meningkatkan BeginTime garis waktu berturut-turut yang berbagi induk yang sama, Anda dapat mengejutkan waktu bermain mereka.
Nilai Negatif
Nilai BeginTime negatif menyebabkan Timeline berulah seolah-olah dimulai pada beberapa waktu lalu. Misalnya, Timeline dengan BeginTime negatif 2,5 detik dan Duration 5 detik akan tampak setengah arah selesai ketika dimulai.
BeginTime dan SpeedRatio
Waktu yang dijelaskan oleh properti BeginTime diukur dalam waktu induk garis waktu. Misalnya, garis waktu dengan BeginTime 5 yang induknya memiliki SpeedRatio 2 benar-benar dimulai setelah 2,5 detik.
Pengaturan SpeedRatio garis waktu sendiri tidak memengaruhi BeginTime. Misalnya, garis waktu dengan BeginTime 5 detik, SpeedRatio 2, dan garis waktu induk dengan SpeedRatio 1 dimulai setelah 5 detik, bukan 2,5.
Informasi Properti Dependensi
Bidang pengidentifikasi | BeginTimeProperty |
Properti metadata diatur ke true |
Tidak |
Penggunaan Atribut XAML
< BeginTimeobjek ="[-][hari.]jam:menit:detik[.fractionalSeconds]"/>
-atau-
< objekBeginTime="[-][hari.]jam:menit"/>
-atau-
< objekBeginTime="[-]hari"/>
-atau-
< objekBeginTime="{x:Null Markup Extension}"/>
Nilai XAML
Item dalam tanda kurung siku ([
dan ]
) bersifat opsional.
hari
System.Int32
Nilai yang lebih besar dari atau sama dengan 0 yang menjelaskan jumlah hari yang terbenam pada waktu mulai ini.
jam
System.Int32
Nilai antara 0 dan 23 yang menunjukkan jumlah jam yang terbentang pada waktu mulai ini.
menit
System.Int32
Nilai antara 0 dan 59 yang menunjukkan jumlah menit yang terbentang pada waktu mulai ini.
detik
System.Int32
Nilai antara 0 dan 59 yang menunjukkan jumlah detik yang terbentang pada waktu mulai ini.
fractionalSeconds
System.Int32
Nilai yang terdiri dari 1 hingga 7 digit yang mewakili detik pecahan.
Untuk sintaks TimeSpan lengkap, lihat bagian Keterangan dari halaman Parse.