PointAnimationUsingKeyFrames Classe

Definizione

Anima il valore di una proprietà Point lungo un set di fotogrammi chiave.

public ref class PointAnimationUsingKeyFrames sealed : Timeline
/// [Microsoft.UI.Xaml.Markup.ContentProperty(Name="KeyFrames")]
/// [Windows.Foundation.Metadata.Activatable(65536, "Microsoft.UI.Xaml.WinUIContract")]
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class PointAnimationUsingKeyFrames final : Timeline
[Microsoft.UI.Xaml.Markup.ContentProperty(Name="KeyFrames")]
[Windows.Foundation.Metadata.Activatable(65536, "Microsoft.UI.Xaml.WinUIContract")]
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class PointAnimationUsingKeyFrames : Timeline
Public NotInheritable Class PointAnimationUsingKeyFrames
Inherits Timeline
<PointAnimationUsingKeyFrames>
  oneOrMorePointKeyFrames
</PointAnimationUsingKeyFrames>
Ereditarietà
Object Platform::Object IInspectable DependencyObject Timeline PointAnimationUsingKeyFrames
Attributi

Esempio

Nell'esempio seguente viene spostata un'ellisse lungo un percorso triangolare. Nell'esempio viene utilizzata la classe PointAnimationUsingKeyFrames per animare la proprietà Center di un oggetto EllipseGeometry. Questa animazione usa tre fotogrammi chiave nel modo seguente:

  1. Durante la prima metà del secondo, usa un'istanza della classe LinearPointKeyFrame per spostare l'ellisse lungo un percorso a una velocità costante dalla posizione iniziale. I fotogrammi chiave lineari, ad esempio LinearPointKeyFrame , creano un'interpolazione lineare uniforme tra i valori.
  2. Durante la fine della seconda metà successiva, usa un'istanza della classe DiscretePointKeyFrame per spostare improvvisamente l'ellisse lungo il percorso alla posizione successiva. Fotogrammi chiave discreti come DiscretePointKeyFrame creano salti improvvisi tra i valori.
  3. Durante i due secondi finali, usa un'istanza della classe SplinePointKeyFrame per spostare nuovamente l'ellisse nella posizione iniziale. I fotogrammi chiave spline come SplinePointKeyFrame creano una transizione di variabile tra i valori in base ai valori della proprietà KeySpline . In questo esempio, l'animazione inizia lentamente e accelera in modo esponenziale verso la fine del segmento di tempo.
<Canvas Width="400" Height="300">
    <Canvas.Resources>
        <Storyboard x:Name="myStoryboard">

            <!-- Animating the Center property uses 3 KeyFrames, which animate
             the ellipse allong a triangular path. -->
            <PointAnimationUsingKeyFrames
          Storyboard.TargetProperty="Center"
          Storyboard.TargetName="MyAnimatedEllipseGeometry"
          Duration="0:0:5" RepeatBehavior="Forever" EnableDependentAnimation="True">

                <!-- Over the first half second, Using a LinearPointKeyFrame, the ellipse 
               moves steadily from its starting position along the first line of the 
               trianglar path.  -->
                <LinearPointKeyFrame KeyTime="0:0:0.5" Value="100,300" />

                <!-- Using a DiscretePointKeyFrame, the ellipse suddenly changes position
               after the first second of the animation. -->
                <DiscretePointKeyFrame KeyTime="0:0:1" Value="400,300" />

                <!-- Using a SplinePointKeyFrame, the ellipse moves back to its starting
               position. It moves slowly at first and then speeds up. This key frame 
               takes 2 seconds to complete. -->
                <SplinePointKeyFrame KeySpline="0.6,0.0 0.9,0.00" 
                 KeyTime="0:0:3" Value="200,100" />
            </PointAnimationUsingKeyFrames>
        </Storyboard>
    </Canvas.Resources>
    <Path Fill="Blue" Loaded="Start_Animation">
        <Path.Data>

            <!-- Describes an ellipse. -->
            <EllipseGeometry x:Name="MyAnimatedEllipseGeometry"
             Center="200,100" RadiusX="15" RadiusY="15" />
        </Path.Data>
    </Path>
</Canvas>
// Start the animation when the object loads
private void Start_Animation(object sender, RoutedEventArgs e)
{
    myStoryboard.Begin();
}

Costruttori

Nome Descrizione
PointAnimationUsingKeyFrames()

Inizializza una nuova istanza della classe PointAnimationUsingKeyFrames .

Proprietà

Nome Descrizione
AutoReverse

Ottiene o imposta un valore che indica se la sequenza temporale viene riprodotta inversa dopo il completamento di un'iterazione in avanti.

(Ereditato da Timeline)
BeginTime

Ottiene o imposta l'ora di inizio della sequenza temporale .

(Ereditato da Timeline)
Dispatcher

Restituisce null sempre in un'app di SDK per app di Windows. Usare invece DispatcherQueue .

(Ereditato da DependencyObject)
DispatcherQueue

Ottiene l'oggetto DispatcherQueue a cui è associato questo oggetto. Rappresenta DispatcherQueue una funzionalità che può accedere al nel thread dell'interfaccia DependencyObject utente anche se il codice viene avviato da un thread non dell'interfaccia utente.

(Ereditato da DependencyObject)
Duration

Ottiene o imposta l'intervallo di tempo per il quale viene riprodotta questa sequenza temporale, senza contare le ripetizioni.

(Ereditato da Timeline)
EnableDependentAnimation

Ottiene o imposta un valore che dichiara se le proprietà animate considerate animazioni dipendenti devono essere autorizzate a usare questa dichiarazione di animazione.

EnableDependentAnimationProperty

Identifica la proprietà di dipendenza EnableDependentAnimation .

FillBehavior

Ottiene o imposta un valore che specifica il comportamento dell'animazione dopo che raggiunge la fine del periodo attivo.

(Ereditato da Timeline)
KeyFrames

Ottiene l'insieme di oggetti PointKeyFrame che definiscono l'animazione.

RepeatBehavior

Ottiene o imposta il comportamento ripetuto di questa sequenza temporale.

(Ereditato da Timeline)
SpeedRatio

Ottiene o imposta la frequenza, rispetto all'elemento padre, in cui l'ora avanza per questa sequenza temporale.

(Ereditato da Timeline)

Metodi

Nome Descrizione
ClearValue(DependencyProperty)

Cancella il valore locale di una proprietà di dipendenza.

(Ereditato da DependencyObject)
GetAnimationBaseValue(DependencyProperty)

Restituisce qualsiasi valore di base stabilito per una proprietà di dipendenza, che si applica nei casi in cui un'animazione non è attiva.

(Ereditato da DependencyObject)
GetValue(DependencyProperty)

Restituisce il valore effettivo corrente di una proprietà di dipendenza da dependencyObject.

(Ereditato da DependencyObject)
ReadLocalValue(DependencyProperty)

Restituisce il valore locale di una proprietà di dipendenza, se è impostato un valore locale.

(Ereditato da DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

Registra una funzione di notifica per l'ascolto delle modifiche a una dipendenza specifica in questa istanza dependencyObject .

(Ereditato da DependencyObject)
SetValue(DependencyProperty, Object)

Imposta il valore locale di una proprietà di dipendenza in un Oggetto DependencyObject.

(Ereditato da DependencyObject)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

Annulla una notifica di modifica registrata in precedenza chiamando RegisterPropertyChangedCallback.

(Ereditato da DependencyObject)

Eventi

Nome Descrizione
Completed

Si verifica quando l'oggetto Storyboard è stato completato.

(Ereditato da Timeline)

Si applica a

Vedi anche