แก้ไข

แชร์ผ่าน


CommandManager.AddPreviewExecutedHandler Method

Definition

Attaches the specified ExecutedRoutedEventHandler to the specified element.

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

Parameters

element
UIElement

The element to attach handler to.

handler
ExecutedRoutedEventHandler

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())
    {
        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)

Applies to

See also