PointAnimationUsingKeyFrames Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Animiert den Wert einer Point-Eigenschaft entlang einer Reihe von Keyframes.
public ref class PointAnimationUsingKeyFrames sealed : Timeline
/// [Windows.Foundation.Metadata.Activatable(65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.UI.Xaml.Markup.ContentProperty(Name="KeyFrames")]
class PointAnimationUsingKeyFrames final : Timeline
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.UI.Xaml.Markup.ContentProperty(Name="KeyFrames")]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
class PointAnimationUsingKeyFrames final : Timeline
[Windows.Foundation.Metadata.Activatable(65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.UI.Xaml.Markup.ContentProperty(Name="KeyFrames")]
public sealed class PointAnimationUsingKeyFrames : Timeline
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.UI.Xaml.Markup.ContentProperty(Name="KeyFrames")]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
public sealed class PointAnimationUsingKeyFrames : Timeline
Public NotInheritable Class PointAnimationUsingKeyFrames
Inherits Timeline
<PointAnimationUsingKeyFrames>
oneOrMorePointKeyFrames
</PointAnimationUsingKeyFrames>
- Vererbung
- Attribute
Windows-Anforderungen
Gerätefamilie |
Windows 10 (eingeführt in 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (eingeführt in v1.0)
|
Beispiele
Im folgende Beispiel wird eine Ellipse entlang eines dreieckigen Pfads verschoben. Im Beispiel wird die PointAnimationUsingKeyFrames-Klasse verwendet, um die Center-Eigenschaft einer EllipseGeometry-Klasse zu animieren. In dieser Animation werden drei Keyframes folgendermaßen verwendet:
- In der ersten Hälfte der Sekunde wird ein instance der LinearPointKeyFrame-Klasse verwendet, um die Ellipse mit einer konstanten Rate von der Ausgangsposition entlang eines Pfads zu verschieben. Lineare Keyframes wie LinearPointKeyFrame sorgen für eine reibungslose lineare Interpolation zwischen Werten.
- Am Ende der nächsten halben Sekunde wird eine instance der DiscretePointKeyFrame-Klasse verwendet, um die Ellipse plötzlich entlang des Pfads zur nächsten Position zu verschieben. Diskrete Keyframes wie DiscretePointKeyFrame erzeugen plötzliche Sprünge zwischen Werten.
- Während der letzten zwei Sekunden wird eine instance der SplinePointKeyFrame-Klasse verwendet, um die Ellipse zurück an die Startposition zu verschieben. Spline-Keyframes wie SplinePointKeyFrame erstellen einen variablen Übergang zwischen Werten gemäß den Werten der KeySpline-Eigenschaft . In diesem Beispiel beginnt die Animation zunächst langsam und beschleunigt dann exponentiell im letzten Bereich des Zeitabschnitts.
<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();
}
' Start the animation when the object loads
Private Sub Start_Animation(ByVal sender As Object, ByVal e As EventArgs)
myStoryboard.Begin()
End Sub
Konstruktoren
PointAnimationUsingKeyFrames() |
Initialisiert eine neue instance der PointAnimationUsingKeyFrames-Klasse. |
Eigenschaften
AutoReverse |
Ruft einen Wert ab, der angibt, ob die Zeitachse nach einem vollständigen Durchgang vorwärts in umgekehrter Reihenfolge abspielt. (Geerbt von Timeline) |
BeginTime |
Ruft den Zeitpunkt ab, zu dem diese Zeitachse beginnen soll, oder legt diese fest. (Geerbt von Timeline) |
Dispatcher |
Ruft den CoreDispatcher ab, dem dieses Objekt zugeordnet ist. CoreDispatcher stellt eine Funktion dar, die auf das DependencyObject im UI-Thread zugreifen kann, auch wenn der Code von einem Nicht-UI-Thread initiiert wird. (Geerbt von DependencyObject) |
Duration |
Ruft die Zeitdauer ab, für die diese Zeitachse wiedergegeben wird, ohne Wiederholungen, oder legt diese fest. (Geerbt von Timeline) |
EnableDependentAnimation |
Ruft einen Wert ab, der angibt, ob animierte Eigenschaften, die als abhängige Animationen gelten, diese Animationsdeklaration verwenden dürfen, oder legt diesen fest. |
EnableDependentAnimationProperty |
Identifiziert die EnableDependentAnimation-Abhängigkeitseigenschaft . |
FillBehavior |
Ruft einen Wert ab, der angibt, wie sich die Animation verhält, nachdem sie das Ende ihres aktiven Zeitraums erreicht hat, oder legt diesen fest. (Geerbt von Timeline) |
KeyFrames |
Ruft die Auflistung der PointKeyFrame-Objekte ab, die die Animation definieren. |
RepeatBehavior |
Ruft das Wiederholungsverhalten dieser Zeitachse ab oder legt es fest. (Geerbt von Timeline) |
SpeedRatio |
Ruft die Rate relativ zum übergeordneten Element ab, zu dem für diese Zeitachse ein Fortschritt erfolgt, oder legt diese fest. (Geerbt von Timeline) |
Methoden
ClearValue(DependencyProperty) |
Löscht den lokalen Wert einer Abhängigkeitseigenschaft. (Geerbt von DependencyObject) |
GetAnimationBaseValue(DependencyProperty) |
Gibt einen beliebigen Basiswert zurück, der für eine Abhängigkeitseigenschaft eingerichtet wurde, der in Fällen gilt, in denen eine Animation nicht aktiv ist. (Geerbt von DependencyObject) |
GetValue(DependencyProperty) |
Gibt den aktuellen effektiven Wert einer Abhängigkeitseigenschaft aus einem DependencyObject zurück. (Geerbt von DependencyObject) |
ReadLocalValue(DependencyProperty) |
Gibt den lokalen Wert einer Abhängigkeitseigenschaft zurück, wenn ein lokaler Wert festgelegt ist. (Geerbt von DependencyObject) |
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback) |
Registriert eine Benachrichtigungsfunktion zum Lauschen auf Änderungen an einer bestimmten DependencyProperty für dieses DependencyObject-instance. (Geerbt von DependencyObject) |
SetValue(DependencyProperty, Object) |
Legt den lokalen Wert einer Abhängigkeitseigenschaft für ein DependencyObject fest. (Geerbt von DependencyObject) |
UnregisterPropertyChangedCallback(DependencyProperty, Int64) |
Bricht eine Änderungsbenachrichtigung ab, die zuvor durch Aufrufen von RegisterPropertyChangedCallback registriert wurde. (Geerbt von DependencyObject) |
Ereignisse
Completed |
Tritt auf, wenn die Wiedergabe des Storyboard-Objekts abgeschlossen wurde. (Geerbt von Timeline) |