ExponentialEase Class
Represents an easing function that creates an animation that accelerates and/or decelerates using an exponential formula (see remarks).
System.Windows.DependencyObject
System.Windows.Media.Animation.EasingFunctionBase
System.Windows.Media.Animation.ExponentialEase
Namespace: System.Windows.Media.Animation
Assembly: System.Windows (in System.Windows.dll)
The ExponentialEase type exposes the following members.
| Name | Description | |
|---|---|---|
![]() ![]() | Dispatcher | Gets the Dispatcher this object is associated with. (Inherited from DependencyObject.) |
![]() ![]() | EasingMode | Gets or sets a value that specifies how the animation interpolates. (Inherited from EasingFunctionBase.) |
![]() ![]() | Exponent | Gets or sets the exponent used to determine the interpolation of the animation. |
| Name | Description | |
|---|---|---|
![]() ![]() | CheckAccess | Determines whether the calling thread has access to this object. (Inherited from DependencyObject.) |
![]() ![]() | ClearValue | Clears the local value of a dependency property. (Inherited from DependencyObject.) |
![]() ![]() | Ease | Transforms normalized time to control the pace of an animation. (Inherited from EasingFunctionBase.) |
![]() ![]() | EaseInCore | Provides the logic portion of the easing function that you can override to produce the EaseIn mode of the custom easing function. (Overrides EasingFunctionBase.EaseInCore(Double).) |
![]() ![]() | Equals(Object) | Determines whether the specified Object is equal to the current Object. (Inherited from Object.) |
![]() ![]() | Finalize | Allows an object to try to free resources and perform other cleanup operations before the Object is reclaimed by garbage collection. (Inherited from Object.) |
![]() ![]() | GetAnimationBaseValue | Returns any base value established for a Silverlight dependency property, which would apply in cases where an animation is not active. (Inherited from DependencyObject.) |
![]() ![]() | GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) |
![]() ![]() | GetType | Gets the Type of the current instance. (Inherited from Object.) |
![]() ![]() | GetValue | Returns the current effective value of a dependency property from a DependencyObject. (Inherited from DependencyObject.) |
![]() ![]() | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) |
![]() ![]() | ReadLocalValue | Returns the local value of a dependency property, if a local value is set. (Inherited from DependencyObject.) |
![]() ![]() | SetValue | Sets the local value of a dependency property on a DependencyObject. (Inherited from DependencyObject.) |
![]() ![]() | ToString | Returns a string that represents the current object. (Inherited from Object.) |
You can control whether the animation accelerates, decelerates or both by specifying the EasingMode. The following graph demonstrates the different values of EasingMode where f(t) represents the animation progress and t represents time.

The formula used for this function is the following.

Using the formula above, the following graph illustrates the effect of several different values for the Exponent property:

There are several other easing functions besides ExponentialEase which you can explore using the following sample.
In addition to using the easing functions included in the run-time, you can create your own custom easing functions by inheriting from EasingFunctionBase.
The following example applies a ExponentialEase easing function to a DoubleAnimation to create a decelerating animation.
<StackPanel x:Name="LayoutRoot" Background="White"> <StackPanel.Resources> <Storyboard x:Name="myStoryboard"> <DoubleAnimation From="30" To="200" Duration="00:00:3" Storyboard.TargetName="myRectangle" Storyboard.TargetProperty="Height"> <DoubleAnimation.EasingFunction> <ExponentialEase Exponent="6" EasingMode="EaseOut"/> </DoubleAnimation.EasingFunction> </DoubleAnimation> </Storyboard> </StackPanel.Resources> <Rectangle x:Name="myRectangle" MouseLeftButtonDown="Mouse_Clicked" Fill="Blue" Width="200" Height="30" /> </StackPanel>
For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.





