CommandBinding.Executed Event

Definition

Si verifica quando viene eseguito il comando associato a 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 

Examples

Nell'esempio seguente viene creato un CommandBinding che esegue il mapping di un ExecutedRoutedEventHandler e di un gestore CanExecuteRoutedEventArgs al comando Open.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)

Di seguito viene illustrata la ExecutedRoutedEventHandler che consente di creare una MessageBox quando viene eseguito il comando.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

Remarks

Quando viene eseguito un RoutedCommand, viene generato l'evento PreviewExecuted sulla destinazione del comando.When a RoutedCommand executes, it raises the PreviewExecuted event on the command target. Se l'evento PreviewExecuted non viene gestito, viene generato l'evento Executed sulla destinazione del comando.If the PreviewExecuted event is not handled, the Executed event is raised on the command target. Se la destinazione del comando ha un CommandBinding per il comando specifico, viene chiamato il gestore Executed per quel CommandBinding.If the command target has a CommandBinding for the specific command, the Executed handler for that CommandBinding is called. Se la destinazione del comando non dispone di un CommandBinding per quel comando specifico, l'evento Executed bolle verso l'alto nell'albero degli elementi che cerca un elemento con un CommandBinding associato al comando.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. Se non viene trovato alcun CommandBinding, il comando non viene gestito.If a CommandBinding is not found, the command is not handled.

Informazioni evento indirizzatoRouted Event Information

Campo identificatoreIdentifier field ExecutedEvent
Strategia di routingRouting strategy BubblingBubbling
DelegatoDelegate ExecutedRoutedEventHandler

Applies to

See also