EventSetter Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
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
Beispiele
Im folgenden Beispiel wird ein Einzelner EventSetter innerhalb eines Seitenebenenformats festgelegt.
<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 sehen Sie die Beispielereignishandler:
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
Ereignissatzer rufen die angegebenen Ereignishandler als Reaktion auf weitergeleitete Ereignisse auf, die auf alle Elemente angewendet werden, die auf alle Elemente verweisen, die nicht darauf verweisen Style , dass Sie Instanzhandler an jedes einzelne Element anfügen müssen. Nur Style.Setters Objekte unterstützen EventSetter .
Sie können Ereignissatzter nur für Ereignisse deklarieren, die weitergeleitete Ereignisse sind. Sie können Ereignissetter für weitergeleitete Ereignisse mit einer direkten Routingstrategie, bubbling-Ereignissen oder Tunnelereignissen deklarieren.
Instanzen der Klasse werden in der EventSetter Regel über Extensible Application Markup Language (XAML) als Objektelement in einer durch XAML definierten Formatvorlage erstellt. Möglicherweise EventSetter wird auch von Code instanziiert.
Ereignissatzer können nicht in einer Formatvorlage verwendet werden, die in einem Designressourcenverzeichnis enthalten ist. Dies liegt daran, dass ein Designressource-Wörterbuch zur Laufzeit häufig lose binär-XAML-Dateien (BAML) ist und kein Bereich definiert ist, in dem codebehind begleitet wird, der die Handler definiert.
Handler, die über Ereignissatzer angefügt sind, werden nach allen Klassenhandlern für ein Ereignis und auch nach instanzierten Handlern aufgerufen. Wenn daher ein Klassenhandler oder Instanzhandler ein Ereignis markiert, das in seinen Argumenten behandelt wird, wird der von einem Ereignissetter deklarierte Handler nicht aufgerufen, es sei denn, der Ereignissetter legt HandledEventsToo true
speziell fest.
Ereignissetter können auch aus BasedOn Formatvorlagen stammen. Der Ereignissetterhandler aus der angegebenen Formatvorlage wird BasedOn nach den Handlern im unmittelbaren Format aufgerufen.
Beachten Sie, dass nur Style.Setters Objekte unterstützt EventSetter werden. Trigger (TriggerBase und abgeleitete Klassen) unterstützen EventSetternicht .
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) |