CommandBinding.CanExecute Evento
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Ocorre quando o comando associado a essa CommandBinding inicia uma verificação para determinar se o comando pode ser executado no destino do 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 de evento
Exemplos
O exemplo a seguir cria um CommandBinding que mapeia um ExecutedRoutedEventHandler e um CanExecuteRoutedEventArgs manipulador para o 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)
A seguir, mostra o CanExecuteRoutedEventHandler que define CanExecute como 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
Comentários
Quando o CanExecute método em um RoutedCommand é chamado, o PreviewCanExecute evento é gerado no destino de comando. Se o evento não for tratado, o CanExecute evento será gerado. Se o destino de comando tiver um CommandBinding para o comando , o CanExecute manipulador para isso CommandBinding será chamado. Se o destino de comando não tiver um CommandBinding para o comando, o CanExecute evento aumentará a árvore de elementos procurando um elemento que tenha um CommandBinding associado ao comando .
Informações de evento encaminhado
Campo Identificador | CanExecuteEvent |
Estratégia de roteamento | Borbulhando |
Delegar | CanExecuteRoutedEventHandler |
- O evento de túnel correspondente é PreviewCanExecute.