CommandBinding.CanExecute Evento

Definizione

Si verifica quando il comando associato a questo CommandBinding avvia un controllo per determinare se il comando può essere eseguito nella destinazione del comando.

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 CommandBinding che esegue il mapping di un ExecutedRoutedEventHandler 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 CanExecuteRoutedEventHandler che imposta CanExecute su true.

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 oggetto per il comando , viene chiamato il CanExecute gestore per tale CommandBinding comando. Se la destinazione del comando non dispone di un oggetto CommandBinding per il comando, l'evento CanExecute si adatta all'albero degli elementi cercando un elemento CommandBinding associato al comando.

Informazioni sugli eventi indirizzati

Elemento Valore
Campo Identificatore CanExecuteEvent
Strategia di routing Bubbling
Delegato CanExecuteRoutedEventHandler

Si applica a

Vedi anche