ElasticEase Classe

Definizione

Rappresenta una funzione di interpolazione che crea un'animazione simile a una molla che oscilla avanti e indietro fino ad arrestarsi.

public ref class ElasticEase : System::Windows::Media::Animation::EasingFunctionBase
public class ElasticEase : System.Windows.Media.Animation.EasingFunctionBase
type ElasticEase = class
    inherit EasingFunctionBase
Public Class ElasticEase
Inherits EasingFunctionBase
Ereditarietà

Esempio

L'esempio seguente applica una ElasticEase funzione di interpolazione a un DoubleAnimation per creare un'animazione simile a una primavera che oscilla indietro e indietro fino a quando non viene a riposo.

<Rectangle Name="myRectangle" Width="200" Height="30" Fill="Blue">
    <Rectangle.Triggers>
        <EventTrigger RoutedEvent="Rectangle.MouseDown">
            <BeginStoryboard>
                <Storyboard>
                    <DoubleAnimation From="30" To="200" Duration="00:00:4" 
                     Storyboard.TargetName="myRectangle" 
                     Storyboard.TargetProperty="Height">
                        <DoubleAnimation.EasingFunction>
                            
                            <!-- Elastic easing function assigned to From/To animation -->
                            <ElasticEase x:Name="myElasticEase" Oscillations="3" 
                             Springiness="1" EasingMode="EaseOut"/>
                        </DoubleAnimation.EasingFunction>
                    </DoubleAnimation>

                </Storyboard>
            </BeginStoryboard>
        </EventTrigger>
    </Rectangle.Triggers>

</Rectangle>

Commenti

È possibile controllare quando si verifica nel comportamento "spring" in un'animazione specificando il valore della EasingMode proprietà. Il grafico seguente illustra i diversi valori di , dove f(t) rappresenta lo stato di EasingModeavanzamento dell'animazione e t rappresenta il tempo.

ElasticEase con grafici di diversi interpolazioni.

È possibile specificare il numero di volte in cui l'animazione oscilla indietro e indietro usando la Oscillations proprietà e la stretta elasticità delle oscillazioni.Springiness

Nota

Poiché questa animazione causa l'oscillazione dei valori indietro e indietro, l'animazione potrebbe interpolare in numeri negativi in modo imprevisto. Ciò può causare errori durante l'animazione delle proprietà che non consentono numeri negativi. Ad esempio, se si applica questa animazione all'oggetto Height (ad esempio da 0 a 200 con un EasingMode oggetto EaseIn), l'animazione tenterà di interpolare i numeri negativi per Height cui genererà un errore.

Esistono diverse altre funzioni di interpolazione oltre ElasticEasea . Oltre a usare le funzioni di interpolazione incluse nell'esecuzione, è possibile creare funzioni di interpolazione personalizzate ereditando da EasingFunctionBase.

Utilizzo della sintassi XAML per gli elementi oggetto

<ElasticEase .../>  

Costruttori

ElasticEase()

Inizializza una nuova istanza della classe ElasticEase.

Campi

OscillationsProperty

Identifica la proprietà di dipendenza Oscillations.

SpringinessProperty

Identifica la proprietà di dipendenza Springiness.

Proprietà

CanFreeze

Ottiene un valore che indica se l'oggetto può essere impostato come non modificabile.

(Ereditato da Freezable)
DependencyObjectType

Ottiene l'oggetto DependencyObjectType che esegue il wrapping del tipo CLR di questa istanza.

(Ereditato da DependencyObject)
Dispatcher

Ottiene l'oggetto Dispatcher associato a DispatcherObject.

(Ereditato da DispatcherObject)
EasingMode

Ottiene o imposta un valore che specifica il modo in cui viene eseguita l'interpolazione dell'animazione.

(Ereditato da EasingFunctionBase)
IsFrozen

Ottiene un valore che indica se l'oggetto è attualmente modificabile.

(Ereditato da Freezable)
IsSealed

Ottiene un valore che indica se l'istanza è attualmente sealed (di sola lettura).

(Ereditato da DependencyObject)
Oscillations

Ottiene o imposta il numero di volte in cui la destinazione scorre avanti e indietro sulla destinazione dell'animazione.

Springiness

Ottiene o imposta la rigidità della molla. Minore è il valore di Springiness, più rigida sarà la molla e maggiore sarà l'elasticità diminuendo di intensità a ogni oscillazione.

Metodi

CheckAccess()

Determina se il thread chiamante ha accesso a DispatcherObject.

(Ereditato da DispatcherObject)
ClearValue(DependencyProperty)

Cancella il valore locale di una proprietà. La proprietà da cancellare è specificata da un identificatore DependencyProperty.

(Ereditato da DependencyObject)
ClearValue(DependencyPropertyKey)

Cancella il valore locale di una proprietà di sola lettura. La proprietà da cancellare è specificata da un oggetto DependencyPropertyKey.

(Ereditato da DependencyObject)
Clone()

Crea un clone modificabile dell'oggetto Freezable, eseguendo copie complete dei valori dell'oggetto. Durante la copia delle proprietà di dipendenza di questo oggetto, questo metodo copia le espressioni (che potrebbero non essere più risolte), ma non le animazioni né i relativi valori correnti.

(Ereditato da Freezable)
CloneCore(Freezable)

Rende l'istanza un clone (copia completa) dell'oggetto Freezable specificato usando i valori di proprietà di base (non animati).

(Ereditato da Freezable)
CloneCurrentValue()

Crea un clone modificabile (copia completa) di Freezable utilizzando i valori correnti.

(Ereditato da Freezable)
CloneCurrentValueCore(Freezable)

Rende l'istanza un clone (copia completa) modificabile dell'oggetto Freezable specificato usando i valori di proprietà correnti.

(Ereditato da Freezable)
CoerceValue(DependencyProperty)

Assegna forzatamente il valore della proprietà di dipendenza specificata. Questa operazione viene eseguita richiamando qualsiasi funzione CoerceValueCallback specificata nei metadati della proprietà di dipendenza esistente nell'oggetto DependencyObject chiamante.

(Ereditato da DependencyObject)
CreateInstance()

Inizializza una nuova istanza della classe Freezable.

(Ereditato da Freezable)
CreateInstanceCore()

Crea una nuova istanza della classe derivata da Freezable. Quando si crea una classe derivata, è necessario eseguire l'override di questo metodo.

Ease(Double)

Trasforma il tempo normalizzato per controllare la velocità di un'animazione.

(Ereditato da EasingFunctionBase)
EaseInCore(Double)

Fornisce la parte logica della funzione di interpolazione di cui è possibile eseguire l'override per produrre la modalità EaseIn della funzione di interpolazione personalizzata.

Equals(Object)

Determina se l'oggetto DependencyObject specificato equivale all'oggetto DependencyObject corrente.

(Ereditato da DependencyObject)
Freeze()

Rende non modificabile l'oggetto corrente e ne imposta la proprietà IsFrozen su true.

(Ereditato da Freezable)
FreezeCore(Boolean)

Rende immodificabile l'oggetto Freezable o verifica se può essere reso immodificabile.

(Ereditato da Freezable)
GetAsFrozen()

Crea una copia bloccata di Freezable, utilizzando valori delle proprietà di base (non-animati). Dato che la copia è bloccata, gli oggetti secondari bloccati sono copiati dal riferimento.

(Ereditato da Freezable)
GetAsFrozenCore(Freezable)

Rende l'istanza un clone bloccato dell'oggetto Freezable specificato usando i valori di proprietà di base (non animati).

(Ereditato da Freezable)
GetCurrentValueAsFrozen()

Crea una copia bloccata di Freezable utilizzando valori della proprietà correnti. Dato che la copia è bloccata, gli oggetti secondari bloccati sono copiati dal riferimento.

(Ereditato da Freezable)
GetCurrentValueAsFrozenCore(Freezable)

Rende l'istanza corrente un clone bloccato dell'oggetto Freezable specificato. Se l'oggetto ha proprietà di dipendenza animate, i valori animati correnti vengono copiati.

(Ereditato da Freezable)
GetHashCode()

Ottiene un codice hash per l'oggetto DependencyObject.

(Ereditato da DependencyObject)
GetLocalValueEnumerator()

Crea un enumeratore specializzato per determinare le proprietà di dipendenza che presentano valori impostati localmente nell'oggetto DependencyObject.

(Ereditato da DependencyObject)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
GetValue(DependencyProperty)

Restituisce il valore effettivo corrente di una proprietà di dipendenza in questa istanza di DependencyObject.

(Ereditato da DependencyObject)
InvalidateProperty(DependencyProperty)

Valuta di nuovo il valore effettivo della proprietà di dipendenza specificata.

(Ereditato da DependencyObject)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
OnChanged()

Chiamato quando viene modificato l'oggetto Freezable corrente.

(Ereditato da Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject)

Assicura che adatti puntatori del contesto siano stabiliti per un membro dati DependencyObjectType che è appena stato impostato.

(Ereditato da Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty)

Questo membro supporta l'infrastruttura Windows Presentation Foundation (WPF) e non deve essere usata direttamente dal codice.

(Ereditato da Freezable)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

Esegue l'override dell'implementazione di DependencyObject di OnPropertyChanged(DependencyPropertyChangedEventArgs) per richiamare anche eventuali gestori Changed in risposta alla modifica di una proprietà di dipendenza di tipo Freezable.

(Ereditato da Freezable)
ReadLocalValue(DependencyProperty)

Restituisce il valore locale di una proprietà di dipendenza, se esistente.

(Ereditato da DependencyObject)
ReadPreamble()

Assicura che l’accesso di Freezable sia stato eseguito da un thread valido. Gli eredi di Freezable devono chiamare questo metodo all'inizio di qualsiasi API che legge i membri dei dati che non sono proprietà della dipendenza.

(Ereditato da Freezable)
SetCurrentValue(DependencyProperty, Object)

Imposta il valore di una proprietà di dipendenza senza modificare l'origine del valore.

(Ereditato da DependencyObject)
SetValue(DependencyProperty, Object)

Imposta il valore locale di una proprietà di dipendenza, specificato dal relativo identificatore della proprietà di dipendenza.

(Ereditato da DependencyObject)
SetValue(DependencyPropertyKey, Object)

Imposta il valore locale di una proprietà di dipendenza di sola lettura, specificato dall'identificatore DependencyPropertyKey della proprietà di dipendenza.

(Ereditato da DependencyObject)
ShouldSerializeProperty(DependencyProperty)

Restituisce un valore che indica se i processi di serializzazione devono serializzare il valore della proprietà di dipendenza specificata.

(Ereditato da DependencyObject)
ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)
VerifyAccess()

Impone che il thread chiamante abbia accesso a DispatcherObject.

(Ereditato da DispatcherObject)
WritePostscript()

Genera l'evento Changed per Freezable e richiama il metodo OnChanged(). Le classi che derivano da Freezable devono chiamare questo metodo alla fine di qualsiasi API che modifica i membri di classe che non sono archiviati come proprietà di dipendenza.

(Ereditato da Freezable)
WritePreamble()

Verifica che l'oggetto Freezable non sia bloccato e che l'accesso sia eseguito da un contesto di threading valido. Gli eredi di Freezable devono chiamare questo metodo all'inizio di qualsiasi API che scrive sui membri dei dati che non sono proprietà della dipendenza.

(Ereditato da Freezable)

Eventi

Changed

Si verifica quando Freezable o un oggetto che contiene è modificato.

(Ereditato da Freezable)

Si applica a

Vedi anche