PowerEase PowerEase PowerEase PowerEase Class


Represents an easing function that creates an animation that accelerates and/or decelerates using the formula f (t) = tp where p is equal to the Power property.

public : sealed class PowerEase : EasingFunctionBase, IPowerEase
public sealed class PowerEase : EasingFunctionBase, IPowerEase
Public NotInheritable Class PowerEase Inherits EasingFunctionBase Implements IPowerEase
var powerEase = new powerEase();
<PowerEase .../>
Windows 10 requirements
Device family
Windows 10 (introduced v10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduced v1)


This XAML example applies a PowerEase easing function with a Power property value of 20 to a DoubleAnimation to create a decelerating animation. Because the Power value is so high, the deceleration is sudden compared to what it would be if you used a lower value.

<StackPanel x:Name="LayoutRoot" >
        <Storyboard x:Name="myStoryboard">
            <DoubleAnimation From="1" To="6" Duration="00:00:3" 
                    <PowerEase Power="20" EasingMode="EaseOut"/>

    <Rectangle PointerPressed="Pointer_Clicked" 
     Fill="Blue" Width="200" Height="30">
            <ScaleTransform x:Name="rectScaleTransform" />

// When the user clicks the rectangle, the animation
// begins. 
private void Pointer_Clicked(object sender, PointerRoutedEventArgs e)
' When the user clicks the rectangle, the animation
' begins. 
Private Sub Pointer_Clicked(ByVal sender As Object, ByVal e As PointerRoutedEventArgs)
End Sub


A PowerEase can be used to produce the same results as some of the other easing functions, depending on how Power is set. For example, a CubicEase is the same as a PowerEase with Power of 3.

Power is a Double value so can be used to set non-integer values. For example you could use a Power of 2.5 to produce an easing function has a sharper curve than QuadraticEase but not as sharp as CubicEase.

An easing function can be applied to the EasingFunction properties of From/To/By animations, or to the EasingFunction properties of key-frame types used for the Easing variants of key-frame animations. For more info, see Key-frame animations and easing function animations.


PowerEase() PowerEase() PowerEase() PowerEase()

Initializes a new instance of the PowerEase class.

public : PowerEase()
public PowerEase()
Public Sub New()
var powerEase = new powerEase();


Power Power Power Power

Gets or sets the exponential power of the animation interpolation. For example, a value of 7 creates an animation interpolation curve that follows the formula f (t) = t7.

public : double Power { get; set; }
public double Power { get; set; }
Public ReadWrite Property Power As double
var double = powerEase.power;
powerEase.power = double;
<PowerEase Power="double" .../>
double double double double

The exponential power of the animation interpolation. This value must be greater or equal to 0. The default is 2.

PowerProperty PowerProperty PowerProperty PowerProperty

Identifies the Power dependency property.

public : static DependencyProperty PowerProperty { get; }
public static DependencyProperty PowerProperty { get; }
Public Static ReadOnly Property PowerProperty As DependencyProperty
var dependencyProperty = Windows.UI.Xaml.Media.Animation.PowerEase.powerProperty;
DependencyProperty DependencyProperty DependencyProperty DependencyProperty

The identifier for the Power dependency property.

Dispatcher Dispatcher Dispatcher Dispatcher

Inherited from DependencyObject

EasingMode EasingMode EasingMode EasingMode

Inherited from EasingFunctionBase

EasingModeProperty EasingModeProperty EasingModeProperty EasingModeProperty

Inherited from EasingFunctionBase


ClearValue(DependencyProperty) ClearValue(DependencyProperty) ClearValue(DependencyProperty) ClearValue(DependencyProperty)

Inherited from DependencyObject

Ease(Double) Ease(Double) Ease(Double) Ease(Double)

Inherited from EasingFunctionBase

GetAnimationBaseValue(DependencyProperty) GetAnimationBaseValue(DependencyProperty) GetAnimationBaseValue(DependencyProperty) GetAnimationBaseValue(DependencyProperty)

Inherited from DependencyObject

GetValue(DependencyProperty) GetValue(DependencyProperty) GetValue(DependencyProperty) GetValue(DependencyProperty)

Inherited from DependencyObject

ReadLocalValue(DependencyProperty) ReadLocalValue(DependencyProperty) ReadLocalValue(DependencyProperty) ReadLocalValue(DependencyProperty)

Inherited from DependencyObject

RegisterPropertyChangedCallback(DependencyProperty,DependencyPropertyChangedCallback) RegisterPropertyChangedCallback(DependencyProperty,DependencyPropertyChangedCallback) RegisterPropertyChangedCallback(DependencyProperty,DependencyPropertyChangedCallback) RegisterPropertyChangedCallback(DependencyProperty,DependencyPropertyChangedCallback)

Inherited from DependencyObject

SetValue(DependencyProperty,Object) SetValue(DependencyProperty,Object) SetValue(DependencyProperty,Object) SetValue(DependencyProperty,Object)

Inherited from DependencyObject

UnregisterPropertyChangedCallback(DependencyProperty,Int64) UnregisterPropertyChangedCallback(DependencyProperty,Int64) UnregisterPropertyChangedCallback(DependencyProperty,Int64) UnregisterPropertyChangedCallback(DependencyProperty,Int64)

Inherited from DependencyObject

See Also