CommandManager.AddPreviewCanExecuteHandler Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Attaches the specified CanExecuteRoutedEventHandler to the specified element.
public:
static void AddPreviewCanExecuteHandler(System::Windows::UIElement ^ element, System::Windows::Input::CanExecuteRoutedEventHandler ^ handler);
public static void AddPreviewCanExecuteHandler (System.Windows.UIElement element, System.Windows.Input.CanExecuteRoutedEventHandler handler);
static member AddPreviewCanExecuteHandler : System.Windows.UIElement * System.Windows.Input.CanExecuteRoutedEventHandler -> unit
Public Shared Sub AddPreviewCanExecuteHandler (element As UIElement, handler As CanExecuteRoutedEventHandler)
Parameters
- element
- UIElement
The element to attach handler
to.
- handler
- CanExecuteRoutedEventHandler
The can execute handler.
Exceptions
element
or handler
is null
.
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
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)