Animatable.GetAnimationBaseValue(DependencyProperty) Methode
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.
Gibt den nicht animierten Wert der angegebenen DependencyProperty zurück.
public:
virtual System::Object ^ GetAnimationBaseValue(System::Windows::DependencyProperty ^ dp);
public object GetAnimationBaseValue (System.Windows.DependencyProperty dp);
abstract member GetAnimationBaseValue : System.Windows.DependencyProperty -> obj
override this.GetAnimationBaseValue : System.Windows.DependencyProperty -> obj
Public Function GetAnimationBaseValue (dp As DependencyProperty) As Object
Parameter
Bezeichnet die Eigenschaft, deren Basiswert (nicht animiert) abgerufen werden soll.
Gibt zurück
Der Wert, der zurückgegeben wird, wenn die angegebene Eigenschaft nicht animiert ist.
Implementiert
Beispiele
Im folgenden Beispiel werden die nicht animierten Werte animierter Eigenschaften abgerufen und angezeigt.
/*
This sample shows how to use the
Animatable.GetAnimationBaseValue and
UIElement.GetAnimationBaseValue methods
to get the non-animated value of an
animated Animatable or UIElement.
*/
using System;
using System.Windows;
using System.Windows.Navigation;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using System.Windows.Controls;
using System.Windows.Input;
namespace Microsoft.Samples.Animation.TimingBehaviors
{
public class GetAnimationBaseValueExample : Page {
private RotateTransform animatedRotateTransform;
public GetAnimationBaseValueExample()
{
WindowTitle = "GetAnimationBaseValue Example";
StackPanel myPanel = new StackPanel();
myPanel.Margin = new Thickness(20.0);
// Create a button.
Button animatedButton = new Button();
animatedButton.Content = "Click Me";
animatedButton.Width = 100;
animatedButton.Margin = new Thickness(100);
// Create and animate a RotateTransform and
// apply it to the button's RenderTransform
// property.
animatedRotateTransform = new RotateTransform();
animatedRotateTransform.Angle = 45;
DoubleAnimation angleAnimation =
new DoubleAnimation(0,360, TimeSpan.FromSeconds(5));
angleAnimation.RepeatBehavior = RepeatBehavior.Forever;
animatedRotateTransform.BeginAnimation(
RotateTransform.AngleProperty, angleAnimation);
animatedButton.RenderTransform = animatedRotateTransform;
animatedButton.RenderTransformOrigin = new Point(0.5,0.5);
// Animate the button's width.
DoubleAnimation widthAnimation =
new DoubleAnimation(120, 300, TimeSpan.FromSeconds(5));
widthAnimation.RepeatBehavior = RepeatBehavior.Forever;
widthAnimation.AutoReverse = true;
animatedButton.BeginAnimation(Button.WidthProperty, widthAnimation);
// Handle button clicks.
animatedButton.Click += new RoutedEventHandler(animatedButton_Clicked);
// Add the button to the panel.
myPanel.Children.Add(animatedButton);
this.Content = myPanel;
}
// Display the base value for Button.Width and RotateTransform.Angle.
private void animatedButton_Clicked(object sender, RoutedEventArgs e)
{
Button animatedButton = (Button)sender;
MessageBox.Show("Button width base value: " +
animatedButton.GetAnimationBaseValue(Button.WidthProperty)
+ "\nRotateTransform base value: " +
animatedRotateTransform.GetAnimationBaseValue(RotateTransform.AngleProperty));
}
}
}
'
'
' This sample shows how to use the
' Animatable.GetAnimationBaseValue and
' UIElement.GetAnimationBaseValue methods
' to get the non-animated value of an
' animated Animatable or UIElement.
'
'
Imports System.Windows
Imports System.Windows.Navigation
Imports System.Windows.Media
Imports System.Windows.Media.Animation
Imports System.Windows.Shapes
Imports System.Windows.Controls
Imports System.Windows.Input
Namespace Microsoft.Samples.Animation.TimingBehaviors
Public Class GetAnimationBaseValueExample
Inherits Page
Private animatedRotateTransform As RotateTransform
Public Sub New()
WindowTitle = "GetAnimationBaseValue Example"
Dim myPanel As New StackPanel()
myPanel.Margin = New Thickness(20.0)
' Create a button.
Dim animatedButton As New Button()
animatedButton.Content = "Click Me"
animatedButton.Width = 100
animatedButton.Margin = New Thickness(100)
' Create and animate a RotateTransform and
' apply it to the button's RenderTransform
' property.
animatedRotateTransform = New RotateTransform()
animatedRotateTransform.Angle = 45
Dim angleAnimation As New DoubleAnimation(0,360, TimeSpan.FromSeconds(5))
angleAnimation.RepeatBehavior = RepeatBehavior.Forever
animatedRotateTransform.BeginAnimation(RotateTransform.AngleProperty, angleAnimation)
animatedButton.RenderTransform = animatedRotateTransform
animatedButton.RenderTransformOrigin = New Point(0.5,0.5)
' Animate the button's width.
Dim widthAnimation As New DoubleAnimation(120, 300, TimeSpan.FromSeconds(5))
widthAnimation.RepeatBehavior = RepeatBehavior.Forever
widthAnimation.AutoReverse = True
animatedButton.BeginAnimation(Button.WidthProperty, widthAnimation)
' Handle button clicks.
AddHandler animatedButton.Click, AddressOf animatedButton_Clicked
' Add the button to the panel.
myPanel.Children.Add(animatedButton)
Me.Content = myPanel
End Sub
' Display the base value for Button.Width and RotateTransform.Angle.
Private Sub animatedButton_Clicked(ByVal sender As Object, ByVal e As RoutedEventArgs)
Dim animatedButton As Button = CType(sender, Button)
MessageBox.Show("Button width base value: " & animatedButton.GetAnimationBaseValue(Button.WidthProperty).ToString & vbLf & "RotateTransform base value: " & animatedRotateTransform.GetAnimationBaseValue(RotateTransform.AngleProperty).ToString)
End Sub
End Class
End Namespace
Hinweise
Wenn die angegebene Eigenschaft nicht animiert ist, gibt diese Methode dasselbe Ergebnis wie GetValue.