ExponentialEase ExponentialEase ExponentialEase ExponentialEase Class


Represents an easing function that creates an animation that accelerates and/or decelerates using an exponential formula.

public : sealed class ExponentialEase : EasingFunctionBase, IExponentialEase
struct winrt::Windows::UI::Xaml::Media::Animation::ExponentialEase : EasingFunctionBase, IExponentialEase
public sealed class ExponentialEase : EasingFunctionBase, IExponentialEase
Public NotInheritable Class ExponentialEase Inherits EasingFunctionBase Implements IExponentialEase
<ExponentialEase .../>
Windows 10 requirements
Device family
Windows 10 (introduced v10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduced v1)


This XAML example applies a ExponentialEase easing function to a DoubleAnimation to create a decelerating animation.

<StackPanel x:Name="LayoutRoot" >
        <Storyboard x:Name="myStoryboard">
            <DoubleAnimation From="1" To="6" Duration="00:00:3" 
                    <ExponentialEase Exponent="6" 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


ExponentialEase is an easing function that has a function-over-time formula that uses an Exponent value to shape the function-over-time curve. The value used for Exponent changes the shape of the curve quite a bit. Exponent can be negative, if so the function acts a bit like changing the EasingMode to EaseOut with a positive value. You might want to experiment with different values for Exponent and EasingMode when using this easing function.

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.


ExponentialEase() ExponentialEase() ExponentialEase() ExponentialEase()

Initializes a new instance of the ExponentialEase class.

public : ExponentialEase()
ExponentialEase() const;
public ExponentialEase()
Public Sub New()


Dispatcher Dispatcher Dispatcher Dispatcher

Gets the CoreDispatcher that this object is associated with. The CoreDispatcher represents a facility that can access the DependencyObject on the UI thread even if the code is initiated by a non-UI thread.

(Inherited from DependencyObject)

EasingMode EasingMode EasingMode EasingMode

Gets or sets a value that specifies how the animation interpolates.

(Inherited from EasingFunctionBase)

EasingModeProperty EasingModeProperty EasingModeProperty EasingModeProperty

Identifies the EasingMode dependency property.

(Inherited from EasingFunctionBase)

Exponent Exponent Exponent Exponent

Gets or sets the exponent used to determine the interpolation of the animation.

public : double Exponent { get; set; }
double Exponent(); void Exponent(double exponent);
public double Exponent { get; set; }
Public ReadWrite Property Exponent As double
<ExponentialEase Exponent="double" .../>
double double

The exponent used to determine the interpolation of the animation. The default is 2.

ExponentProperty ExponentProperty ExponentProperty ExponentProperty

Identifies the Exponent dependency property.

public : static DependencyProperty ExponentProperty { get; }
static DependencyProperty ExponentProperty();
public static DependencyProperty ExponentProperty { get; }
Public Static ReadOnly Property ExponentProperty As DependencyProperty
DependencyProperty DependencyProperty

The identifier for the Exponent dependency property.


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

Clears the local value of a dependency property.

(Inherited from DependencyObject)

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

Transforms normalized time to control the pace of an animation.

(Inherited from EasingFunctionBase)

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

Returns any base value established for a dependency property, which would apply in cases where an animation is not active.

(Inherited from DependencyObject)

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

Returns the current effective value of a dependency property from a DependencyObject.

(Inherited from DependencyObject)

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

Returns the local value of a dependency property, if a local value is set.

(Inherited from DependencyObject)

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

Registers a notification function for listening to changes to a specific DependencyProperty on this DependencyObject instance.

(Inherited from DependencyObject)

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

Sets the local value of a dependency property on a DependencyObject.

(Inherited from DependencyObject)

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

Cancels a change notification that was previously registered by calling RegisterPropertyChangedCallback.

(Inherited from DependencyObject)

See Also