CommandBinding.Executed Zdarzenie

Definicja

Występuje, gdy polecenie skojarzone z tym działaniem CommandBinding .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 Custom Event Executed As ExecutedRoutedEventHandler 
Public Event Executed As ExecutedRoutedEventHandler 

Typ zdarzenia

ExecutedRoutedEventHandler

Przykłady

Poniższy przykład tworzy CommandBinding Mapowanie ExecutedRoutedEventHandler i programu CanExecuteRoutedEventArgs obsługi Open polecenia.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)

Poniżej przedstawiono, ExecutedRoutedEventHandler który tworzy, MessageBox gdy polecenie jest wykonywane.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

Uwagi

Gdy RoutedCommand wykonuje, wywołuje PreviewExecuted zdarzenie w obiekcie docelowym polecenia.When a RoutedCommand executes, it raises the PreviewExecuted event on the command target. Jeśli PreviewExecuted zdarzenie nie jest obsługiwane, Executed zdarzenie jest zgłaszane w celu polecenia.If the PreviewExecuted event is not handled, the Executed event is raised on the command target. Jeśli obiekt docelowy polecenia ma CommandBinding dla określonego polecenia, Executed program obsługi dla tego CommandBinding jest wywoływany.If the command target has a CommandBinding for the specific command, the Executed handler for that CommandBinding is called. Jeśli obiekt docelowy polecenia nie ma CommandBinding dla tego konkretnego polecenia, Executed zdarzenie bąbelkowe przeszukiwanie drzewa elementów dla elementu, który jest CommandBinding skojarzony z poleceniem.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. Jeśli CommandBinding nie zostanie znaleziona, polecenie nie jest obsługiwane.If a CommandBinding is not found, the command is not handled.

Informacje dotyczące kierowanego zdarzeniaRouted Event Information

Pole identyfikatoraIdentifier field ExecutedEvent
Strategia routinguRouting strategy PropagacjaBubbling
DelegatDelegate ExecutedRoutedEventHandler

Dotyczy

Zobacz też