# EasingFunctionBase Classe

## Définition

Fournit la classe de base pour toutes les fonctions d'accélération.Provides the base class for all the easing functions.

``public ref class EasingFunctionBase abstract : System::Windows::Freezable, System::Windows::Media::Animation::IEasingFunction``
``public abstract class EasingFunctionBase : System.Windows.Freezable, System.Windows.Media.Animation.IEasingFunction``
``````type EasingFunctionBase = class
inherit Freezable
interface IEasingFunction``````
``````Public MustInherit Class EasingFunctionBase
Inherits Freezable
Implements IEasingFunction``````
Héritage
Dérivé
Implémente

## Exemples

L’exemple suivant montre comment créer une fonction d’accélération personnalisée simple.The following example demonstrates how to create a simple custom easing function. Vous pouvez ajouter votre propre logique mathématique pour le comportement de la fonction d’accélération en remplaçant la EaseInCore méthode.You can add your own mathematical logic for how the easing function behaves by overriding the EaseInCore method.

``````namespace CustomEasingFunction
{
public class CustomSeventhPowerEasingFunction : EasingFunctionBase
{
public CustomSeventhPowerEasingFunction()
: base()
{
}

// Specify your own logic for the easing function by overriding
// the EaseInCore method. Note that this logic applies to the "EaseIn"
// mode of interpolation.
protected override double EaseInCore(double normalizedTime)
{
// applies the formula of time to the seventh power.
return Math.Pow(normalizedTime, 7);
}

// Typical implementation of CreateInstanceCore
protected override Freezable CreateInstanceCore()
{

return new CustomSeventhPowerEasingFunction();
}
}
}
``````
``````Namespace CustomEasingFunction
Public Class CustomSeventhPowerEasingFunction
Inherits EasingFunctionBase
Public Sub New()
MyBase.New()
End Sub

' Specify your own logic for the easing function by overriding
' the EaseInCore method. Note that this logic applies to the "EaseIn"
' mode of interpolation.
Protected Overrides Function EaseInCore(ByVal normalizedTime As Double) As Double
' applies the formula of time to the seventh power.
Return Math.Pow(normalizedTime, 7)
End Function

' Typical implementation of CreateInstanceCore
Protected Overrides Function CreateInstanceCore() As Freezable

Return New CustomSeventhPowerEasingFunction()
End Function

End Class
End Namespace
``````
``````<Window x:Class="CustomEasingFunction.Window1"
xmlns:CustomEase="clr-namespace:CustomEasingFunction"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1" Height="500" Width="300">
<StackPanel>
<TextBlock Margin="10" TextWrapping="Wrap">Click on the rectangle to start the animation</TextBlock>
<StackPanel x:Name="LayoutRoot" Background="White">

<Rectangle Name="myRectangle" Width="200" Height="30" Fill="Blue">
<Rectangle.Triggers>
<EventTrigger RoutedEvent="Rectangle.MouseDown">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation From="30" To="300" Duration="00:00:3"
Storyboard.TargetName="myRectangle"
Storyboard.TargetProperty="Height">
<DoubleAnimation.EasingFunction>

easing function.-->
<CustomEase:CustomSeventhPowerEasingFunction EasingMode="EaseIn"/>
</DoubleAnimation.EasingFunction>
</DoubleAnimation>
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Rectangle.Triggers>

</Rectangle>

</StackPanel>
</StackPanel>

</Window>
``````

## Remarques

Vous pouvez créer vos propres fonctions d’accélération personnalisées en héritant de cette classe.You can create your own custom easing functions by inheriting from this class.

## Constructeurs

 Initialise une nouvelle instance de la classe EasingFunctionBase.Initializes a new instance of the EasingFunctionBase class.

## Champs

 Identifie la propriété de dépendance EasingMode.Identifies the EasingMode dependency property.

## Propriétés

 Obtient une valeur qui indique si l’objet peut être rendu non modifiable.Gets a value that indicates whether the object can be made unmodifiable. (Hérité de Freezable) Obtient le DependencyObjectType qui encapsule le type CLRCLR de cette instance.Gets the DependencyObjectType that wraps the CLRCLR type of this instance. (Hérité de DependencyObject) Obtient le Dispatcher associé à DispatcherObject.Gets the Dispatcher this DispatcherObject is associated with. (Hérité de DispatcherObject) Obtient ou définit une valeur qui spécifie le mode d'interpolation de l'animation.Gets or sets a value that specifies how the animation interpolates. Obtient une valeur qui indique si l’objet est actuellement modifiable.Gets a value that indicates whether the object is currently modifiable. (Hérité de Freezable) Récupère une valeur qui indique si cette instance est actuellement sealed (en lecture seule).Gets a value that indicates whether this instance is currently sealed (read-only). (Hérité de DependencyObject)

## Méthodes

 Détermine si le thread appelant a accès à ce DispatcherObject.Determines whether the calling thread has access to this DispatcherObject. (Hérité de DispatcherObject) Efface la valeur locale d’une propriété.Clears the local value of a property. La propriété à effacer est spécifiée par un identificateur DependencyProperty.The property to be cleared is specified by a DependencyProperty identifier. (Hérité de DependencyObject) Efface la valeur locale d’une propriété en lecture seule.Clears the local value of a read-only property. La propriété à effacer est spécifiée par DependencyPropertyKey.The property to be cleared is specified by a DependencyPropertyKey. (Hérité de DependencyObject) Crée un clone modifiable de Freezable, en créant des copies complètes des valeurs de l’objet.Creates a modifiable clone of the Freezable, making deep copies of the object's values. Lors de la copie des propriétés de dépendance de l’objet, cette méthode copie les expressions (qui peuvent ne plus se résoudre), mais pas les animations ni leurs valeurs actuelles.When copying the object's dependency properties, this method copies expressions (which might no longer resolve) but not animations or their current values. (Hérité de Freezable) Fait de l’instance un clone (copie complète) du Freezable spécifié utilisant des valeurs de propriété (non animée) de base.Makes the instance a clone (deep copy) of the specified Freezable using base (non-animated) property values. (Hérité de Freezable) Crée un clone modifiable (copie complète) de Freezable en utilisant ses valeurs actuelles.Creates a modifiable clone (deep copy) of the Freezable using its current values. (Hérité de Freezable) Fait de l’instance un clone (copie complète) modifiable du Freezable spécifié à l’aide des valeurs de propriété actuelles.Makes the instance a modifiable clone (deep copy) of the specified Freezable using current property values. (Hérité de Freezable) Convertit la valeur de la propriété de dépendance spécifiée.Coerces the value of the specified dependency property. Pour cela, on appelle toute fonction CoerceValueCallback spécifiée dans les métadonnées de propriété pour la propriété de dépendance telle qu’elle existe sur le DependencyObject appelant.This is accomplished by invoking any CoerceValueCallback function specified in property metadata for the dependency property as it exists on the calling DependencyObject. (Hérité de DependencyObject) Initialise une nouvelle instance de la classe Freezable.Initializes a new instance of the Freezable class. (Hérité de Freezable) Une fois implémentée dans une classe dérivée, initialise une nouvelle instance de la classe dérivée Freezable.When implemented in a derived class, creates a new instance of the Freezable derived class. (Hérité de Freezable) Transforme le temps normalisé pour contrôler la vitesse d'une animation.Transforms normalized time to control the pace of an animation. Fournit la partie logique de la fonction d’accélération que vous pouvez remplacer pour produire le mode EaseIn de la fonction d’accélération personnalisée.Provides the logic portion of the easing function that you can override to produce the EaseIn mode of the custom easing function. Détermine si un DependencyObject fourni est équivalent au DependencyObject réel.Determines whether a provided DependencyObject is equivalent to the current DependencyObject. (Hérité de DependencyObject) Rend l’objet actif non modifiable et attribue à sa propriété IsFrozen la valeur `true`.Makes the current object unmodifiable and sets its IsFrozen property to `true`. (Hérité de Freezable) Rend l'objet Freezable non modifiable ou vérifie si celui-ci peut être rendu non modifiable ou pas.Makes the Freezable object unmodifiable or tests whether it can be made unmodifiable. (Hérité de Freezable) Crée une copie figée de Freezable, à l'aide des valeurs de propriété (non-animées) de base.Creates a frozen copy of the Freezable, using base (non-animated) property values. Étant donné que la copie est figée, tous les sous-objets figés sont copiés par référence.Because the copy is frozen, any frozen sub-objects are copied by reference. (Hérité de Freezable) Transforme l’instance en clone figé du Freezable spécifié utilisant des valeurs de propriété (non animée) de base.Makes the instance a frozen clone of the specified Freezable using base (non-animated) property values. (Hérité de Freezable) Crée une copie figée de Freezable à l'aide des valeurs de propriété actuelles.Creates a frozen copy of the Freezable using current property values. Étant donné que la copie est figée, tous les sous-objets figés sont copiés par référence.Because the copy is frozen, any frozen sub-objects are copied by reference. (Hérité de Freezable) Convertit l’instance actuelle en un clone figé du Freezable spécifié.Makes the current instance a frozen clone of the specified Freezable. Si l’objet a des propriétés de dépendance animées, leurs valeurs animées actuelles sont copiées.If the object has animated dependency properties, their current animated values are copied. (Hérité de Freezable) Obtient un code de hachage pour ce DependencyObject.Gets a hash code for this DependencyObject. (Hérité de DependencyObject) Crée un énumérateur spécialisé pour déterminer quelles propriétés de dépendance ont des valeurs définies localement sur ce DependencyObject.Creates a specialized enumerator for determining which dependency properties have locally set values on this DependencyObject. (Hérité de DependencyObject) Obtient le Type de l'instance actuelle.Gets the Type of the current instance. (Hérité de Object) Retourne la valeur effective actuelle d’une propriété de dépendance sur cette instance d’un DependencyObject.Returns the current effective value of a dependency property on this instance of a DependencyObject. (Hérité de DependencyObject) Réévalue la valeur effective de la propriété de dépendance spécifiée.Re-evaluates the effective value for the specified dependency property. (Hérité de DependencyObject) Crée une copie superficielle du Object actuel.Creates a shallow copy of the current Object. (Hérité de Object) Appelé lorsque l’objet Freezable actuel est modifié.Called when the current Freezable object is modified. (Hérité de Freezable) Garantit que les pointeurs de contexte appropriés sont établis pour un membre de données de type DependencyObjectType qui vient juste d'être défini.Ensures that appropriate context pointers are established for a DependencyObjectType data member that has just been set. (Hérité de Freezable) Ce membre prend en charge l’infrastructure Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) et n’est pas destiné à être directement utilisé à partir de votre code.This member supports the Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) infrastructure and is not intended to be used directly from your code. (Hérité de Freezable) Substitue l’implémentation DependencyObject de OnPropertyChanged(DependencyPropertyChangedEventArgs) pour appeler également tous les gestionnaires Changed en réponse à une propriété de dépendance variable de type Freezable.Overrides the DependencyObject implementation of OnPropertyChanged(DependencyPropertyChangedEventArgs) to also invoke any Changed handlers in response to a changing dependency property of type Freezable. (Hérité de Freezable) Retourne la valeur locale d’une propriété de dépendance, si elle existe.Returns the local value of a dependency property, if it exists. (Hérité de DependencyObject) Garantit que Freezable est accessible à partir d'un thread valide.Ensures that the Freezable is being accessed from a valid thread. Les héritiers de Freezable doivent appeler cette méthode au début de toute API lisant les membres de données qui ne sont pas des propriétés de dépendance.Inheritors of Freezable must call this method at the beginning of any API that reads data members that are not dependency properties. (Hérité de Freezable) Définit la valeur d’une propriété de dépendance sans modifier sa valeur source.Sets the value of a dependency property without changing its value source. (Hérité de DependencyObject) Définit la valeur locale d’une propriété de dépendance, spécifiée par son identificateur de propriété de dépendance.Sets the local value of a dependency property, specified by its dependency property identifier. (Hérité de DependencyObject) Définit la valeur locale d’une propriété de dépendance en lecture seule, spécifiée par l’identificateur DependencyPropertyKey de la propriété de dépendance.Sets the local value of a read-only dependency property, specified by the DependencyPropertyKey identifier of the dependency property. (Hérité de DependencyObject) Retourne une valeur qui indique si les processus de sérialisation doivent sérialiser la valeur de la propriété de dépendance fournie.Returns a value that indicates whether serialization processes should serialize the value for the provided dependency property. (Hérité de DependencyObject) Retourne une chaîne qui représente l'objet actif.Returns a string that represents the current object. (Hérité de Object) Garantit que le thread appelant a accès à DispatcherObject.Enforces that the calling thread has access to this DispatcherObject. (Hérité de DispatcherObject) Déclenche l’événement Changed pour le Freezable et appelle sa méthode OnChanged().Raises the Changed event for the Freezable and invokes its OnChanged() method. Les classes qui dérivent de Freezable doivent appeler cette méthode à la fin de toute API qui modifie des membres de classe qui ne sont pas stockés en tant que propriétés de dépendance.Classes that derive from Freezable should call this method at the end of any API that modifies class members that are not stored as dependency properties. (Hérité de Freezable) Vérifie que le Freezable n'est pas figé et que son accès s'effectue à partir d'un contexte de thread valide.Verifies that the Freezable is not frozen and that it is being accessed from a valid threading context. Les héritiers de Freezable doivent appeler cette méthode au début de toute API écrivant dans les membres de données qui ne sont pas des propriétés de dépendance.Freezable inheritors should call this method at the beginning of any API that writes to data members that are not dependency properties. (Hérité de Freezable)

## Événements

 Se produit lorsque Freezable ou un objet qu'il contient est modifié.Occurs when the Freezable or an object it contains is modified. (Hérité de Freezable)