Timeline.BeginTime Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Obtient ou définit l’heure à laquelle cette Timeline doit commencer.
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)
Valeur de propriété
Heure à laquelle cette Timeline doit commencer, par rapport au BeginTimede son parent. Si cette chronologie est une chronologie racine, l’heure est relative à son heure de début interactive (moment auquel la chronologie a été déclenchée). Cette valeur peut être positive, négative ou null
; une valeur null
signifie que la chronologie ne joue jamais. La valeur par défaut est zéro.
Exemples
La propriété BeginTime d’une chronologie détermine le début de la période active d’une chronologie. Si la chronologie a une chronologie parente, la propriété BeginTime détermine le temps nécessaire au démarrage de la chronologie après le démarrage de son parent. Si la chronologie est une chronologie racine (un Storyboard, par exemple), la propriété BeginTime détermine la durée de lecture de la chronologie après son déclenchement.
L’exemple suivant montre plusieurs chronologies différentes avec des paramètres de BeginTime différents.
<!-- 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>
Remarques
La propriété BeginTime est utile pour créer des chronologies qui jouent dans une séquence : en augmentant la BeginTime des chronologies successives qui partagent le même parent, vous pouvez décaler leurs temps de jeu.
Valeurs négatives
Une valeur de BeginTime négative entraîne le comportement d’un Timeline comme si elle a commencé à un moment donné dans le passé. Par exemple, une Timeline avec une BeginTime de 2,5 secondes négatives et une Duration de 5 secondes semble être terminée à mi-chemin au démarrage.
BeginTime et SpeedRatio
L’heure décrite par la propriété BeginTime est mesurée dans l’heure du parent de la chronologie. Par exemple, une chronologie avec une BeginTime de 5 dont le parent a une SpeedRatio de 2 démarre réellement après 2,5 secondes.
Le paramètre de SpeedRatio d’une chronologie n’affecte pas son BeginTime. Par exemple, une chronologie avec une BeginTime de 5 secondes, une SpeedRatio de 2 et une chronologie parente avec un SpeedRatio de 1 démarre après 5 secondes, et non 2,5.
Informations sur les propriétés de dépendance
Champ d’identificateur | BeginTimeProperty |
Propriétés de métadonnées définies sur true |
Aucun |
Utilisation des attributs XAML
< objetBeginTime="[-][jours.]heures:minutes:secondes[.fractions]"/>
-ou-
< objetBeginTime="[-][jours.]heures:minutes« />
-ou-
< objetBeginTime="[-]jours« />
-ou-
< objetBeginTime="{x :Null Markup Extension}"/>
Valeurs XAML
Les éléments entre crochets ([
et ]
) sont facultatifs.
jours
System.Int32
Valeur supérieure ou égale à 0 qui décrit le nombre de jours écoulés par cette heure de début.
heures
System.Int32
Valeur comprise entre 0 et 23 qui représente le nombre d’heures comprises entre cette heure de début.
minutes
System.Int32
Valeur comprise entre 0 et 59 qui représente le nombre de minutes délimitées par cette heure de début.
secondes
System.Int32
Valeur comprise entre 0 et 59 qui représente le nombre de secondes écoulées par cette heure de début.
fractionsecondes
System.Int32
Valeur composée de 1 à 7 chiffres qui représente des fractions de seconde.
Pour obtenir la syntaxe complète TimeSpan, consultez la section Remarques de la page Parse.