Diese Dokumentation wurde archiviert und wird nicht länger gepflegt.

TriggerBase-Klasse

Aktualisiert: November 2007

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

Namespace:  System.Windows
Assembly:  PresentationFramework (in PresentationFramework.dll)

[LocalizabilityAttribute(LocalizationCategory.None, Readability = Readability.Unreadable)]
public abstract class TriggerBase : DependencyObject
/** @attribute LocalizabilityAttribute(LocalizationCategory.None, Readability = Readability.Unreadable) */
public abstract class TriggerBase extends DependencyObject
public abstract class TriggerBase extends DependencyObject
Diese Klasse ist abstrakt, unter Vererbungshierarchie finden Sie abgeleitete, nicht abstrakte Klassen für XAML.

Mit dem WPF-Stil- und Vorlagenmodell können Sie Trigger im Style, ControlTemplate und in der DataTemplate angeben. Im Wesentlichen ist TriggerBase die Basisklasse für Objekte, mit denen Sie Änderungen anwenden können, wenn bestimmte Bedingungen erfüllt werden (z. B. wenn ein bestimmter Eigenschaftenwert den Wert true annimmt oder ein Ereignis eintritt).

Es gibt mehrere andere Typen von Triggern: Trigger, MultiTrigger, EventTrigger, DataTrigger und MultiDataTrigger.

Die Trigger-Klasse stellt den einfachsten Typ von Triggern dar. Mit einem Trigger-Objekt können Sie Änderungen auf der Grundlage des Werts einer Eigenschaft übernehmen. Im folgenden Beispiel wird ein benannter Style veranschaulicht, der für Button-Steuerelemente verfügbar ist. Der Style definiert ein Trigger-Element, das die Foreground-Eigenschaft einer Schaltfläche ändert, wenn die IsPressed-Eigenschaft auf true festgelegt ist.

<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 auf der Grundlage des Status mehrerer Eigenschaften übernehmen müssen, können Sie den MultiTrigger verwenden. Ein Beispiel finden Sie auf der MultiTrigger-Seite.

Mit der EventTrigger-Klasse können Sie Änderungen übernehmen, wenn ein Ereignis auftritt. Im folgenden Beispiel werden zwei EventTrigger-Objekte veranschaulicht, von denen eines auftritt, wenn der Mauszeiger in das Element eintritt, und das andere tritt auf, wenn der Mauszeiger 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-Klasse und die MultiDataTrigger-Klasse. Diese ähneln Trigger und MultiTrigger, sie sind jedoch für datengebundene Eigenschaften konzipiert.

Alle öffentlichen static (Shared in Visual Basic)-Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Windows Vista

.NET Framework und .NET Compact Framework unterstützen nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

.NET Framework

Unterstützt in: 3.5, 3.0
Anzeigen: