Freigeben über


TriggerBase Klasse

Definition

Stellt die Basisklasse zum Angeben eines bedingten Werts in einem Style-Objekt dar.

public ref class TriggerBase abstract : System::Windows::DependencyObject
[System.Windows.Localizability(System.Windows.LocalizationCategory.None, Readability=System.Windows.Readability.Unreadable)]
public abstract class TriggerBase : System.Windows.DependencyObject
[<System.Windows.Localizability(System.Windows.LocalizationCategory.None, Readability=System.Windows.Readability.Unreadable)>]
type TriggerBase = class
    inherit DependencyObject
Public MustInherit Class TriggerBase
Inherits DependencyObject
Vererbung
Abgeleitet
Attribute

Beispiele

Es gibt mehrere verschiedene Typen von Triggern: Trigger, MultiTrigger, EventTrigger, DataTriggerund MultiDataTrigger.

Die Trigger -Klasse ist der einfachste Typ von Triggern. Mit einem Trigger -Objekt können Sie Änderungen basierend auf dem Wert einer Eigenschaft anwenden. Das folgende Beispiel zeigt beispielsweise einen benannten Style , der für Steuerelemente verfügbar ist Button . Style Definiert ein Trigger -Element, das die Foreground -Eigenschaft einer Schaltfläche ändert, wenn die IsPressed -Eigenschaft isttrue.

<Style x:Key="Triggers" TargetType="Button">
    <Style.Triggers>
    <Trigger Property="IsPressed" Value="true">
        <Setter Property = "Foreground" Value="Green"/>
    </Trigger>
    </Style.Triggers>
</Style>

Wenn Sie Änderungen basierend auf dem Status mehrerer Eigenschaften anwenden müssen, können Sie verwenden MultiTrigger. Ein Beispiel finden Sie auf der MultiTrigger Seite.

Mit EventTrigger der -Klasse können Sie Änderungen anwenden, wenn ein Ereignis auftritt. Das folgende Beispiel enthält zwei EventTrigger -Objekte, von denen eines auftritt, wenn die Maus in das Element eintritt und das andere, wenn die Maus das Element verlässt.

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

Dies sind auch die DataTrigger Klassen und .MultiDataTrigger Diese ähneln Trigger und MultiTrigger , mit der Ausnahme, dass sie für datengebundene Eigenschaften gelten.

Hinweise

Mit dem WPF-Formatieren und Vorlagenmodell können Sie Trigger innerhalb von Style, ControlTemplateund DataTemplateangeben. Im Wesentlichen ist die Basisklasse für Objekte, mit denen Sie Änderungen anwenden können, TriggerBase wenn bestimmte Bedingungen erfüllt sind (z. B. wenn ein bestimmter Eigenschaftswert zu truewird oder wenn ein Ereignis auftritt).

Eigenschaften

DependencyObjectType

Ruft den ab, der DependencyObjectType den CLR-Typ dieses instance umschließt.

(Geerbt von DependencyObject)
Dispatcher

Ruft den Dispatcher ab, der diesem DispatcherObject zugeordnet ist.

(Geerbt von DispatcherObject)
EnterActions

Ruft eine Auflistung von TriggerAction-Objekten ab, die angewendet werden sollen, wenn das Triggerobjekt aktiviert wird. Diese Eigenschaft gilt nicht für die EventTrigger-Klasse.

ExitActions

Ruft eine Auflistung von TriggerAction-Objekten ab, die angewendet werden sollen, wenn das Triggerobjekt deaktiviert wird. Diese Eigenschaft gilt nicht für die EventTrigger-Klasse.

IsSealed

Ruft einen Wert ab, der angibt, ob diese Instanz derzeit versiegelt (schreibgeschützt) ist.

(Geerbt von DependencyObject)

Methoden

CheckAccess()

Bestimmt, ob der aufrufende Thread auf dieses DispatcherObject zugreifen kann.

(Geerbt von DispatcherObject)
ClearValue(DependencyProperty)

Löscht den lokalen Wert einer Eigenschaft. Die Eigenschaft, deren Wert gelöscht werden soll, wird durch einen DependencyProperty-Bezeichner angegeben.

(Geerbt von DependencyObject)
ClearValue(DependencyPropertyKey)

Löscht den lokalen Wert einer schreibgeschützten Eigenschaft. Die Eigenschaft, deren Wert gelöscht werden soll, wird durch einen DependencyPropertyKey angegeben.

(Geerbt von DependencyObject)
CoerceValue(DependencyProperty)

Erzwingt den Wert der angegebenen Abhängigkeitseigenschaft. Dies erfolgt durch den Aufruf einer beliebigen CoerceValueCallback-Funktion, die in den Metadaten für die Abhängigkeitseigenschaft angegeben ist, während sie beim aufrufenden DependencyObject beendet wird.

(Geerbt von DependencyObject)
Equals(Object)

Bestimmt, ob ein angegebenes DependencyObject dem aktuellen DependencyObject entspricht.

(Geerbt von DependencyObject)
GetHashCode()

Ruft einen Hashcode für diese DependencyObject ab.

(Geerbt von DependencyObject)
GetLocalValueEnumerator()

Erstellt einen spezialisierten Enumerator, mit dem bestimmt wird, welche Abhängigkeitseigenschaften dieses DependencyObject über lokal festgelegte Werte verfügen.

(Geerbt von DependencyObject)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
GetValue(DependencyProperty)

Gibt den aktuellen effektiven Wert einer Abhängigkeitseigenschaft für diese Instanz eines DependencyObject zurück.

(Geerbt von DependencyObject)
InvalidateProperty(DependencyProperty)

Wertet den effektiven Wert für die angegebene Abhängigkeitseigenschaft erneut aus.

(Geerbt von DependencyObject)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

Wird immer dann aufgerufen, wenn der effektive Wert einer Abhängigkeitseigenschaft für dieses DependencyObject aktualisiert wurde. Welche spezifische Abhängigkeitseigenschaft geändert wird, wird in den Ereignisdaten gemeldet.

(Geerbt von DependencyObject)
ReadLocalValue(DependencyProperty)

Gibt den lokalen Wert einer Abhängigkeitseigenschaft zurück, wenn dieser vorhanden ist.

(Geerbt von DependencyObject)
SetCurrentValue(DependencyProperty, Object)

Legt den Wert einer Abhängigkeitseigenschaft fest, ohne deren Wertquelle zu ändern.

(Geerbt von DependencyObject)
SetValue(DependencyProperty, Object)

Legt den lokalen Wert einer Abhängigkeitseigenschaft fest, die durch ihren Bezeichner angegeben ist.

(Geerbt von DependencyObject)
SetValue(DependencyPropertyKey, Object)

Legt den lokalen Wert einer schreibgeschützten Abhängigkeitseigenschaft fest, die durch den DependencyPropertyKey-Bezeichner der Abhängigkeitseigenschaft angegeben ist.

(Geerbt von DependencyObject)
ShouldSerializeProperty(DependencyProperty)

Gibt einen Wert zurück, der angibt, ob Serialisierungsprozesse den Wert der bereitgestellten Abhängigkeitseigenschaft serialisieren sollen.

(Geerbt von DependencyObject)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)
VerifyAccess()

Erzwingt, dass der aufrufende Thread auf dieses DispatcherObject zugreifen kann.

(Geerbt von DispatcherObject)

Gilt für:

Weitere Informationen