EventSetter Klasse

Definition

Stellt einen Ereignissetter in einem Format dar. Ereignissetter rufen in Reaktion auf Ereignisse die angegebenen Ereignishandler auf.

public ref class EventSetter : System::Windows::SetterBase
public class EventSetter : System.Windows.SetterBase
type EventSetter = class
    inherit SetterBase
Public Class EventSetter
Inherits SetterBase
Vererbung
EventSetter

Beispiele

Im folgenden Beispiel wird ein einzelnes EventSetter innerhalb eines Stils auf Seitenebene eingerichtet.

<StackPanel
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  x:Class="SDKSample.EventOvw2"
  Name="dpanel2"
  Initialized="PrimeHandledToo"
>
  <StackPanel.Resources>
    <Style TargetType="{x:Type Button}">
      <EventSetter Event="Click" Handler="b1SetColor"/>
    </Style>
  </StackPanel.Resources>
  <Button>Click me</Button>
  <Button Name="ThisButton" Click="HandleThis">
    Raise event, handle it, use handled=true handler to get it anyway.
  </Button>
</StackPanel>

Im Folgenden sind die Beispielereignishandler dargestellt:

void b1SetColor(object sender, RoutedEventArgs e)
{
  Button b = e.Source as Button;
  b.Background = new SolidColorBrush(Colors.Azure);
}

void HandleThis(object sender, RoutedEventArgs e)
{
  e.Handled=true;
}
Private Sub b1SetColor(ByVal sender As Object, ByVal e As RoutedEventArgs)
  Dim b As Button = TryCast(e.Source, Button)
  b.Background = New SolidColorBrush(Colors.Azure)
End Sub

Private Sub HandleThis(ByVal sender As Object, ByVal e As RoutedEventArgs)
  e.Handled=True
End Sub

Hinweise

Ereignissetter rufen die angegebenen Ereignishandler als Reaktion auf Routingereignisse auf, die für alle Elemente gelten, die auf verweisen, Style anstatt dass Sie Instanzhandler an jedes einzelne Element anfügen müssen. Unterstützt nur Style.Setters EventSetter -Objekte.

Sie können Ereignissetter nur für Ereignisse deklarieren, bei denen es sich um Routingereignisse handelt. Sie können Ereignissetter für Routingereignisse mit einer direkten Routingstrategie, Bubblingereignissen oder Tunnelingereignissen deklarieren.

Instanzen der EventSetter -Klasse werden in der Regel über Extensible Application Markup Language (XAML) als Objektelement innerhalb eines durch XAML definierten Stils erstellt. Ein EventSetter kann auch aus Code instanziiert werden.

Ereignissetter können nicht in einem Stil verwendet werden, der in einem Designressourcenwörterbuch enthalten ist. Dies liegt daran, dass ein Designressourcenwörterbuch zur Laufzeit häufig lose BINÄRE XAML-Dateien (BAML) ist und kein Bereich definiert ist, in dem begleitender CodeBehind vorhanden sein kann, der die Handler definiert.

Handler, die über Ereignissetter angefügt werden, werden nach klassenhandlern für ein Ereignis und nach allen Instanzhandlern aufgerufen. Wenn ein Klassenhandler oder Instanzhandler ein Ereignis markiert, das in seinen Argumenten behandelt wird, wird der von einem Ereignissetter deklarierte Handler daher nicht aufgerufen, es sei denn, der Ereignissetter legt ausdrücklich HandledEventsToo true fest.

Ereignissetter können auch aus BasedOn Stilen stammen. Die Ereignissetterhandler aus dem als angegebenen Stil BasedOn werden nach den Handlern im unmittelbaren Stil aufgerufen.

Beachten Sie, dass nur Style.Setters EventSetter -Objekte unterstützt. Trigger ( TriggerBase und abgeleitete Klassen) unterstützen nicht EventSetter .

Konstruktoren

EventSetter()

Initialisiert eine neue Instanz der EventSetter-Klasse.

EventSetter(RoutedEvent, Delegate)

Initialisiert eine neue Instanz der EventSetter-Klasse unter Verwendung des angegebenen Ereignisses und von Handlerparametern.

Eigenschaften

Event

Ruft das bestimmte Routingereignis ab, auf das dieser EventSetter reagiert, oder legt es fest.

HandledEventsToo

Ruft einen Wert ab, der bestimmt, ob der dem Setter zugewiesene Handler auch dann aufgerufen werden soll, wenn das Ereignis in den zugehörigen Ereignisdaten als behandelt markiert ist, oder legt diesen fest.

Handler

Ruft den Verweis auf einen Handler für ein Routingereignis im Setter ab oder legt diesen fest.

IsSealed

Ruft einen Wert ab, der angibt, ob dieses Objekt einen unveränderlichen Zustand aufweist.

(Geerbt von SetterBase)

Methoden

CheckSealed()

Überprüft, ob dieses Objekt schreibgeschützt ist und nicht geändert werden kann.

(Geerbt von SetterBase)
Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
ToString()

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

(Geerbt von Object)

Gilt für

Siehe auch