CommandBinding.Executed Ereignis

Definition

Tritt auf, wenn der Befehl, der dieser CommandBinding zugeordnet ist, ausgeführt wird.Occurs when the command associated with this CommandBinding executes.

public:
 event System::Windows::Input::ExecutedRoutedEventHandler ^ Executed;
public event System.Windows.Input.ExecutedRoutedEventHandler Executed;
member this.Executed : System.Windows.Input.ExecutedRoutedEventHandler 
Public Event Executed As ExecutedRoutedEventHandler 

Beispiele

Im folgenden Beispiel wird eine CommandBinding erstellt, die dem Open Befehl eine ExecutedRoutedEventHandler und einen CanExecuteRoutedEventArgs Handler zuordnet.The following example creates a CommandBinding that maps an ExecutedRoutedEventHandler and a CanExecuteRoutedEventArgs handler to the Open command.

<Window.CommandBindings>
  <CommandBinding Command="ApplicationCommands.Open"
                  Executed="OpenCmdExecuted"
                  CanExecute="OpenCmdCanExecute"/>
</Window.CommandBindings>
// Creating CommandBinding and attaching an Executed and CanExecute handler
CommandBinding OpenCmdBinding = new CommandBinding(
    ApplicationCommands.Open,
    OpenCmdExecuted,
    OpenCmdCanExecute);

this.CommandBindings.Add(OpenCmdBinding);
' Creating CommandBinding and attaching an Executed and CanExecute handler
Dim OpenCmdBinding As New CommandBinding(ApplicationCommands.Open, AddressOf OpenCmdExecuted, AddressOf OpenCmdCanExecute)

Me.CommandBindings.Add(OpenCmdBinding)

Das folgende Beispiel zeigt die ExecutedRoutedEventHandler, die eine MessageBox erstellt, wenn der Befehl ausgeführt wird.The following shows the ExecutedRoutedEventHandler which creates a MessageBox when the command is executed.

void OpenCmdExecuted(object target, ExecutedRoutedEventArgs e)
{
    String command, targetobj;
    command = ((RoutedCommand)e.Command).Name;
    targetobj = ((FrameworkElement)target).Name;
    MessageBox.Show("The " + command +  " command has been invoked on target object " + targetobj);
}
Private Sub OpenCmdExecuted(ByVal sender As Object, ByVal e As ExecutedRoutedEventArgs)
    Dim command, targetobj As String
    command = CType(e.Command, RoutedCommand).Name
    targetobj = CType(sender, FrameworkElement).Name
    MessageBox.Show("The " + command + " command has been invoked on target object " + targetobj)
End Sub

Hinweise

Wenn eine RoutedCommand ausgeführt wird, löst Sie das PreviewExecuted-Ereignis für das Befehls Ziel aus.When a RoutedCommand executes, it raises the PreviewExecuted event on the command target. Wenn das PreviewExecuted-Ereignis nicht behandelt wird, wird das Executed-Ereignis für das Befehls Ziel ausgelöst.If the PreviewExecuted event is not handled, the Executed event is raised on the command target. Wenn das Befehls Ziel eine CommandBinding für den jeweiligen Befehl aufweist, wird der Executed Handler für dieses CommandBinding aufgerufen.If the command target has a CommandBinding for the specific command, the Executed handler for that CommandBinding is called. Wenn das Befehls Ziel keine CommandBinding für diesen bestimmten Befehl aufweist, wird das Executed-Ereignis die Elementstruktur aufblasen, die nach einem Element sucht, dem ein CommandBinding zugeordnet ist, das mit dem Befehl verknüpft ist.If the command target does not have a CommandBinding for that specific command the Executed event bubbles up the element tree searching for an element that has a CommandBinding associated with the command. Wenn ein CommandBinding nicht gefunden wird, wird der Befehl nicht behandelt.If a CommandBinding is not found, the command is not handled.

Informationen zum RoutingereignisRouted Event Information

BezeichnerfeldIdentifier field ExecutedEvent
Routing StrategieRouting strategy BlasenBubbling
DelegatDelegate ExecutedRoutedEventHandler

Gilt für:

Siehe auch