ExecutedRoutedEventHandler Delegat

Definition

Stellt die Methode für die Behandlung der Routingereignisse Executed und PreviewExecuted sowie verwandter angefügter Ereignisse dar.Represents the method that will handle the Executed and PreviewExecuted routed events, as well as related attached events.

public delegate void ExecutedRoutedEventHandler(System::Object ^ sender, ExecutedRoutedEventArgs ^ e);
public delegate void ExecutedRoutedEventHandler(object sender, ExecutedRoutedEventArgs e);
type ExecutedRoutedEventHandler = delegate of obj * ExecutedRoutedEventArgs -> unit
Public Delegate Sub ExecutedRoutedEventHandler(sender As Object, e As ExecutedRoutedEventArgs)

Parameter

sender
Object

Das Objekt, an das der Ereignishandler angefügt ist.The object where the event handler is attached.

e
ExecutedRoutedEventArgs

Die Ereignisdaten.The event data.

Vererbung
ExecutedRoutedEventHandler

Beispiele

In diesem Beispiel wird ExecutedRoutedEventHandler ein erstellt, der eine visuelle Eigenschaft für das Ziel festlegt, wenn der Befehl ausgeführt wird.This example creates an ExecutedRoutedEventHandler that sets a visual property on the target when the command is executed. Das Beispiel enthält auch die CanExecuteRoutedEventHandler für denselben Befehl.The example also includes the CanExecuteRoutedEventHandler for the same command.

// ExecutedRoutedEventHandler for the custom color command.
private void ColorCmdExecuted(object sender, ExecutedRoutedEventArgs e)
{
    Panel target = e.Source as Panel;
    if (target != null)
    {
        if (target.Background == Brushes.AliceBlue)
        {
            target.Background = Brushes.LemonChiffon;
        }
        else
        {
            target.Background = Brushes.AliceBlue;
        }
    }
}

// CanExecuteRoutedEventHandler for the custom color command.
private void ColorCmdCanExecute(object sender, CanExecuteRoutedEventArgs e)
{
    if (e.Source is Panel)
    {
        e.CanExecute = true;
    }
    else
    {
        e.CanExecute = false;
    }
}
' ExecutedRoutedEventHandler for the custom color command.
Private Sub ColorCmdExecuted(ByVal sender As Object, ByVal e As ExecutedRoutedEventArgs)
    Dim target As Panel = TryCast(e.Source, Panel)
    If target IsNot Nothing Then
        If target.Background Is Brushes.AliceBlue Then
            target.Background = Brushes.LemonChiffon
        Else
            target.Background = Brushes.AliceBlue
        End If

    End If
End Sub

' CanExecuteRoutedEventHandler for the custom color command.
Private Sub ColorCmdCanExecute(ByVal sender As Object, ByVal e As CanExecuteRoutedEventArgs)
    If TypeOf e.Source Is Panel Then
        e.CanExecute = True
    Else
        e.CanExecute = False
    End If
End Sub

Hinweise

Dieser Delegat enthält die Implementierungs Logik für RoutedCommandein-Objekt.This delegate contains the implementation logic for a RoutedCommand. Durch das Trennen der Implementierungs Logik vom Befehl kann der Befehl aus unterschiedlichen Quellen und Typen aufgerufen werden, und es wird die Zentralisierung der Befehls Logik ermöglicht.Separating the implementation logic from the command allows the command to be invoked from different sources and types, and enables the centralization of command logic.

Dieser Delegat wird auch für CommandManager.Executed und CommandManager.PreviewExecutedverwendet, bei denen es sich um CommandManager angefügte Ereignisse in der Klasse handelt, die einen Großteil der Befehls Infrastruktur implementiert.This delegate is also used for CommandManager.Executed and CommandManager.PreviewExecuted, which are attached events on the CommandManager class that implements much of the commanding infrastructure. Die meisten praktischen Handler behandeln jedoch die Executed Ereignisse von einem bestimmten CommandBinding, anstatt von der Arbeit auf der CommandManager Ebene.But most practical handlers will handle the Executed events from a particular CommandBinding, rather than work at the CommandManager level.

In ExecutedRoutedEventArgssind die folgenden Eigenschaften im Allgemeinen von Interesse, wenn Sie einen Ereignishandler für ein Routing Ereignis schreiben, das sich aus einem ausgeführten Befehl ergibt:Within ExecutedRoutedEventArgs, the following properties are generally of interest when you write an event handler for a routed event that results from an executed command:

  • Sourcemeldet das Ziel, in dem der Befehl ausgeführt wurde.Source reports the target where the command was executed. Nachdem der Befehl ausgeführt wurde, können Sie sich auch die Source allgemeinere Form von Routing Ereignis Begriffen als das Objekt vorstellen, das ein Routing Ereignis ausgelöst hat.Once the command is executed, you can also think of the Source more generally in routed event terms, as the object that raised a routed event.

  • Commandmeldet den Befehl, der ausgeführt hat.Command reports the command that executed. Diese Eigenschaft ist nützlich, wenn Sie Befehls Bindungen verwenden und Handler schreiben, die potenziell mehrere Befehle verarbeiten können.This property is useful if you use command bindings and if you write handlers that potentially handle multiple commands.

  • Parametermeldet alle Befehls spezifischen Parameter, die vom ausführenden Befehl übermittelt wurden.Parameter reports any command-specific parameters that were passed by the executing command. Nicht alle Befehle verwenden oder erwarten Befehls spezifische Parameter.Not all commands use or expect command-specific parameters.

  • Handledmeldet, ob das durch den ausgeführten Befehl resultierende Routing Ereignis bereits von einem anderen Element entlang der Route behandelt wurde.Handled reports whether the routed event that resulted from the executed command was already handled by a different element along the route. Bei Routing Ereignis Handlern empfiehlt es sich, Handler zu verwenden, die bei der Behandlung des Ereignisses eine sinnvolle Arbeit ausführen, um Handled auf truefestzulegen.For routed event handlers, it is a recommended practice to have handlers that do meaningful work when handling the event to set Handled to true. Dadurch wird verhindert, dass typische Handler für das Ereignis das Ereignis weiter entlang der Route verarbeiten.This prevents typical handlers for the event from handling the event again further along the route. Weitere Informationen zum Verarbeiten von Routing Ereignissen finden Sie unter Markieren von Routing Ereignissen als behandelt und Klassen Behandlung.For more information on handling routed events, see Marking Routed Events as Handled, and Class Handling.

Dieser Delegat stellt auch Handler für CommandManager.Executed und CommandManager.PreviewExecutedEventdar, bei denen es sich um CommandManager angefügte Ereignisse in der Klasse handelt, die einen Großteil der Befehls Infrastruktur implementiert.This delegate also represents handlers for CommandManager.Executed and CommandManager.PreviewExecutedEvent, which are attached events on the CommandManager class that implements much of the commanding infrastructure. Die meisten praktischen Handler behandeln jedoch die Executed Ereignisse von einem bestimmten CommandBinding, anstatt von der Arbeit auf der CommandManager Ebene.But most practical handlers will handle the Executed events from a particular CommandBinding, rather than work at the CommandManager level.

Weitere Informationen über Befehle finden Sie unter Befehlsübersicht.For more information on commanding, see Commanding Overview.

Erweiterungsmethoden

GetMethodInfo(Delegate)

Ruft ein Objekt ab, das die Methode darstellt, die vom angegebenen Delegaten dargestellt wird.Gets an object that represents the method represented by the specified delegate.

Gilt für:

Siehe auch