Condividi tramite


CommandBinding.CanExecute Evento

Definizione

Si verifica quando il comando associato a CommandBinding avvia un controllo per determinare se è possibile eseguire il comando sulla destinazione.

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 

Tipo evento

Esempio

Nell'esempio seguente viene creato un oggetto che esegue il mapping di un CommandBindingExecutedRoutedEventHandler oggetto e di un CanExecuteRoutedEventArgs gestore al Open comando .

<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 illustrato l'oggetto che CanExecuteRoutedEventHandler imposta su CanExecutetrue.

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

Commenti

Quando viene chiamato il CanExecute metodo su un RoutedCommand oggetto , l'evento PreviewCanExecute viene generato nella destinazione del comando. Se l'evento non viene gestito, viene generato l'evento CanExecute . Se la destinazione del comando ha un CommandBinding per il comando , viene chiamato il CanExecute gestore per tale CommandBinding comando. Se la destinazione del comando non dispone di un CommandBinding oggetto per il comando, l'evento CanExecute esegue la ricerca dell'albero degli elementi alla ricerca di un elemento CommandBinding associato al comando.

Informazioni evento indirizzato

Campo Identificatore CanExecuteEvent
Strategia di routing Bubbling
Delegato CanExecuteRoutedEventHandler

Si applica a

Vedi anche