CommandBinding.CanExecute Ereignis

Definition

Tritt auf, wenn der dieser CommandBinding zugeordnete Befehl eine Überprüfung initiiert, um zu ermitteln, ob der Befehl für das Befehlsziel ausgeführt werden kann.

public:
 event System::Windows::Input::CanExecuteRoutedEventHandler ^ CanExecute;
public event System.Windows.Input.CanExecuteRoutedEventHandler CanExecute;
member this.CanExecute : System.Windows.Input.CanExecuteRoutedEventHandler 
Public Custom Event CanExecute As CanExecuteRoutedEventHandler 
Public Event CanExecute As CanExecuteRoutedEventHandler 

Ereignistyp

CanExecuteRoutedEventHandler

Beispiele

Im folgenden Beispiel wird ein CommandBinding Handler und ein ExecutedRoutedEventHandler CanExecuteRoutedEventArgs Handler dem Open Befehl zugeordnet.

<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)

Im Folgenden finden Sie die Werte, auf die CanExecuteRoutedEventHandler festgelegt CanExecute truewird.

void OpenCmdCanExecute(object sender, CanExecuteRoutedEventArgs e)
{
    e.CanExecute = true;
}
Private Sub OpenCmdCanExecute(ByVal sender As Object, ByVal e As CanExecuteRoutedEventArgs)
    e.CanExecute = True
End Sub

Hinweise

Wenn die Methode auf einem RoutedCommand Aufruf aufgerufen wird, wird das CanExecute PreviewCanExecute Ereignis auf dem Befehlsziel ausgelöst. Wenn das Ereignis nicht behandelt wird, wird das CanExecute Ereignis ausgelöst. Wenn das Befehlsziel über einen CommandBinding Befehl verfügt, wird der CanExecute Handler für dies CommandBinding aufgerufen. Wenn das Befehlsziel nicht CommandBinding über einen Befehl verfügt, übergibt das CanExecute Ereignis die Elementstruktur nach einem Element, das dem Befehl zugeordnet ist CommandBinding .

Informationen zum Routingereignis

Bezeichnerfeld CanExecuteEvent
Routingstrategie Bubbling
Delegat CanExecuteRoutedEventHandler

Gilt für:

Siehe auch