CommandManager.AddCanExecuteHandler(UIElement, CanExecuteRoutedEventHandler) CommandManager.AddCanExecuteHandler(UIElement, CanExecuteRoutedEventHandler) CommandManager.AddCanExecuteHandler(UIElement, CanExecuteRoutedEventHandler) CommandManager.AddCanExecuteHandler(UIElement, CanExecuteRoutedEventHandler) Method

Definition

Attaches the specified CanExecuteRoutedEventHandler to the specified element.

public:
 static void AddCanExecuteHandler(System::Windows::UIElement ^ element, System::Windows::Input::CanExecuteRoutedEventHandler ^ handler);
public static void AddCanExecuteHandler (System.Windows.UIElement element, System.Windows.Input.CanExecuteRoutedEventHandler handler);
static member AddCanExecuteHandler : System.Windows.UIElement * System.Windows.Input.CanExecuteRoutedEventHandler -> unit
Public Shared Sub AddCanExecuteHandler (element As UIElement, handler As CanExecuteRoutedEventHandler)

Parameters

element
UIElement UIElement UIElement UIElement

The element to attach handler to.

Exceptions

Examples

The following example creates a CanExecuteRoutedEventHandler and an ExecutedRoutedEventHandler and attaches them to a Button which is a command source for the Help command.

First, the Button is created and associated with the Help command.

<Button Command="ApplicationCommands.Help"
        Name="helpButton">Help</Button>

Next, the CanExecuteRoutedEventHandler and the ExecutedRoutedEventHandler are created.

private void HelpCmdExecuted(object sender, ExecutedRoutedEventArgs e)
{
    // OpenHelpFile opens the help file
    OpenHelpFile();
}
Private Sub HelpCmdExecuted(ByVal sender As Object, ByVal e As ExecutedRoutedEventArgs)
	' OpenHelpFile opens the help file
	OpenHelpFile()
End Sub
private void HelpCmdCanExecute(object sender, CanExecuteRoutedEventArgs e)
{
    // HelpFilesExists() determines if the help file exists
    if (HelpFileExists() == true)
    {
        e.CanExecute = true;
    }
    else
    {
        e.CanExecute = false;
    }
}
Private Sub HelpCmdCanExecute(ByVal sender As Object, ByVal e As CanExecuteRoutedEventArgs)
	' HelpFilesExists() determines if the help file exists
	If HelpFileExists() = True Then
		e.CanExecute = True
	Else
		e.CanExecute = False
	End If
End Sub

And finally, the handlers are attached to the Button using the AddCanExecuteHandler and AddExecutedHandler.

CommandManager.AddExecutedHandler(helpButton, HelpCmdExecuted);
CommandManager.AddCanExecuteHandler(helpButton, HelpCmdCanExecute);
CommandManager.AddExecutedHandler(helpButton, AddressOf HelpCmdExecuted)
CommandManager.AddCanExecuteHandler(helpButton, AddressOf HelpCmdCanExecute)

Applies to

See also