Condividi tramite


EventTrigger Classe

Definizione

Rappresenta un trigger che applica un set di azioni in risposta a un evento.

public ref class EventTrigger : System::Windows::TriggerBase, System::Windows::Markup::IAddChild
[System.Windows.Markup.ContentProperty("Actions")]
public class EventTrigger : System.Windows.TriggerBase, System.Windows.Markup.IAddChild
[<System.Windows.Markup.ContentProperty("Actions")>]
type EventTrigger = class
    inherit TriggerBase
    interface IAddChild
Public Class EventTrigger
Inherits TriggerBase
Implements IAddChild
Ereditarietà
Attributi
Implementazioni

Esempio

In questo esempio viene illustrato come usare trigger di eventi in uno stile per animare gli MouseEnter eventi e MouseLeave di un FrameworkElementoggetto . In questo esempio, l'oggetto Style ha il TargetType valore impostato su Rectangle. Pertanto, non è necessario qualificare i MouseEnter nomi degli eventi e MouseLeave con il nome della classe.

<Style TargetType="Rectangle">
  <Setter Property="Width" Value="50" />
  <Setter Property="Height" Value="50" />
  <Setter Property="Margin" Value="20" />
  <Setter Property="HorizontalAlignment" Value="Left" />
  <Style.Triggers>
    <EventTrigger RoutedEvent="MouseEnter">
        <BeginStoryboard>
            <Storyboard>
              <DoubleAnimation To="300" Duration="0:0:1.5" 
                AccelerationRatio="0.10" DecelerationRatio="0.25" 
                Storyboard.TargetProperty="(Canvas.Width)" />
            </Storyboard>
        </BeginStoryboard>
    </EventTrigger>
    <EventTrigger RoutedEvent="MouseLeave">
        <BeginStoryboard>
            <Storyboard>
              <DoubleAnimation Duration="0:0:1.5" 
                AccelerationRatio="0.10" DecelerationRatio="0.25" 
                Storyboard.TargetProperty="(Canvas.Width)" />
            </Storyboard>
        </BeginStoryboard>
    </EventTrigger>
  </Style.Triggers>
</Style>

Commenti

Trigger gli oggetti hanno le Settersproprietà , EnterActionse ExitActions che applicano modifiche o azioni in base allo stato di determinate proprietà, mentre EventTrigger gli oggetti iniziano un set di Actions quando si verifica un evento indirizzato specificato. Ad esempio, è possibile usare un EventTrigger oggetto per avviare un set di animazioni quando il puntatore del mouse si trova su un determinato controllo dell'interfaccia utente. A differenza Triggerdi , EventTrigger non ha alcun concetto di terminazione dello stato, quindi l'azione non verrà annullata una volta che la condizione che ha generato l'evento non è più vera.

Si noti che quando si usa un EventTriggeroggetto , è necessario scegliere eventi che non interferiscono con il comportamento intrinseco del controllo. Controlli come o TextBox eseguono azioni specifiche sugli eventi di input utente, ad esempio Button i clic del mouse e gli eventi della tastiera. Ad esempio, se si crea uno stile di un pulsante e si tenta di impostare l'evento come RoutedEvent oggetto EventTriggerdi , non EventTrigger viene mai applicato perché l'evento MouseDown viene gestito per primo dal pulsante. È invece possibile usare l'evento PreviewMouseDown o un evento diverso.

Quando si usa il data binding, se si usa l'evento, è necessario impostare il valore dell'oggetto su true su per la generazione dell'evento TargetUpdatedBinding.NotifyOnTargetUpdated

L'aggiunta di un elemento figlio a un TriggerAction oggetto aggiunge in modo implicito all'oggetto TriggerActionCollectionEventTrigger .EventTrigger

Costruttori

EventTrigger()

Inizializza una nuova istanza della classe EventTrigger.

EventTrigger(RoutedEvent)

Inizializza una nuova istanza della classe EventTrigger con l'evento specificato.

Proprietà

Actions

Ottiene la raccolta di azioni da applicare quando si verifica l'evento.

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)
EnterActions

Ottiene una raccolta di oggetti TriggerAction da applicare quando l'oggetto trigger diventa attivo. Questa proprietà non si applica alla classe EventTrigger.

(Ereditato da TriggerBase)
ExitActions

Ottiene una raccolta di oggetti TriggerAction da applicare quando l'oggetto trigger diventa inattivo. Questa proprietà non si applica alla classe EventTrigger.

(Ereditato da TriggerBase)
IsSealed

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

(Ereditato da DependencyObject)
RoutedEvent

Ottiene o imposta l'oggetto RoutedEvent che attiverà questo trigger.

SourceName

Ottiene o imposta il nome dell'oggetto con l'evento che attiva il trigger. Viene usata solo dai trigger di elemento o dai trigger di modello.

Metodi

AddChild(Object)

Aggiunge l'oggetto specificato all'insieme Actions del trigger dell'evento corrente.

AddText(String)

Questo metodo non è supportato e sfocia in un'eccezione.

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)
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)
Equals(Object)

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

(Ereditato da DependencyObject)
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)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

Richiamato ogni volta che viene aggiornato il valore effettivo di qualsiasi proprietà di dipendenza in DependencyObject. La proprietà di dipendenza specifica modificata viene indicata nei dati dell'evento.

(Ereditato da DependencyObject)
ReadLocalValue(DependencyProperty)

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

(Ereditato da DependencyObject)
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)
ShouldSerializeActions()

Restituisce un valore che indica se i processi di serializzazione devono serializzare il valore effettivo della proprietà Actions in istanze di questa classe.

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)

Implementazioni dell'interfaccia esplicita

IAddChild.AddChild(Object)

Aggiunge un oggetto figlio.

IAddChild.AddText(String)

Aggiunge il contenuto di testo di un nodo all'oggetto.

Si applica a

Vedi anche