Sdílet prostřednictvím


Timeline.BeginTime Vlastnost

Definice

Získá nebo nastaví čas, kdy má tento Timeline začít.

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)

Hodnota vlastnosti

Čas zahájení tohoto Timeline vzhledem k BeginTimenadřazeného objektu . Pokud je tato časová osa kořenovou časovou osou, je čas relativní k interaktivnímu počátečnímu času (okamžiku, kdy byla časová osa aktivována). Tato hodnota může být kladná, záporná nebo null; hodnota null znamená, že časová osa se nikdy nepřehraje. Výchozí hodnota je nula.

Příklady

Vlastnost BeginTime časové osy určuje začátek aktivního období časové osy. Pokud má časová osa nadřazenou časovou osu, vlastnost BeginTime určuje, jak dlouho trvá, než časová osa začne po jeho nadřazené ose. Pokud je časová osa kořenovou časovou osou (například Storyboard), vlastnost BeginTime určuje, jak dlouho trvá, než se časová osa začne přehrávat po aktivaci.

Následující příklad ukazuje několik různých časových os s různými nastaveními BeginTime.

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

Poznámky

Vlastnost BeginTime je užitečná pro vytváření časových os, které se přehrávají v posloupnosti: zvýšením BeginTime po sobě jdoucích časových os, které sdílejí stejný nadřazený prvek, můžete jejich časy přehrávání rozhodit.

Záporné hodnoty

Záporná hodnota BeginTime způsobí, že se Timeline chová, jako kdyby se v minulosti spustila. Například Timeline s BeginTime zápornou 2,5 sekundou a Duration 5 sekund bude při spuštění dokončeno napůl.

BeginTime a SpeedRatio

Čas popsaný vlastností BeginTime se měří v čase nadřazené časové osy. Například časová osa s BeginTime 5, jejichž nadřazený objekt má SpeedRatio 2 ve skutečnosti začíná po 2,5 sekundách.

Vlastní nastavení SpeedRatio časové osy nemá vliv na její BeginTime. Například časová osa s BeginTime 5 sekund, SpeedRatio 2 a nadřazenou časovou osou s SpeedRatio 1 začíná po 5 sekundách, nikoli po 2,5.

Informace o vlastnosti závislosti

Pole Identifikátor BeginTimeProperty
Vlastnosti metadat nastavené na true Žádný

Použití atributu XAML

< objektBeginTime="{[dny.]hodiny:minuty:sekund[.desetinné sekundy]"/>

-nebo-

< objektBeginTime="{[dny.]hodiny:minut"/>

-nebo-

< objektBeginTime="dny"/>

-nebo-

< objektBeginTime="{x:Null – rozšíření značek}"/>

Hodnoty XAML

Položky v hranatých závorkách ([ a ]) jsou volitelné.

dny
System.Int32

Hodnota větší než nebo rovna 0, která popisuje počet dnů rozložených do tohoto počátečního času.

hodin
System.Int32

Hodnota mezi 0 a 23, která představuje počet hodin rozložených do tohoto počátečního času.

minut
System.Int32

Hodnota mezi 0 a 59, která představuje počet minut rozložených do tohoto počátečního času.

sekund
System.Int32

Hodnota mezi 0 a 59, která představuje počet sekund rozložený do tohoto počátečního času.

zlomkové
System.Int32

Hodnota skládající se z 1 až 7 číslic, která představuje desetinné sekundy.

Úplnou syntaxi TimeSpan najdete v části Poznámky na stránce Parse.

Platí pro

Viz také