CommandManager.AddCanExecuteHandler Methode

Definition

Fügt den angegebenen CanExecuteRoutedEventHandler an das angegebene Element an.

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)

Parameter

element
UIElement

Das Element, an das der handler angefügt werden soll.

handler
CanExecuteRoutedEventHandler

Der ausführbare Handler.

Ausnahmen

element oder handler ist null.

Beispiele

Im folgenden Beispiel werden ein CanExecuteRoutedEventHandler und ein ExecutedRoutedEventHandler erstellt und an eine Button angefügt, bei der es sich um eine Befehlsquelle für den Help Befehl handelt.

Zuerst wird der Button erstellt und dem Help Befehl zugeordnet.

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

Als Nächstes werden die CanExecuteRoutedEventHandler- und ExecutedRoutedEventHandler-Objekte erstellt.

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

Und schließlich werden die Handler mit AddCanExecuteHandler dem Button und AddExecutedHandlerangefügt.

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

Gilt für:

Weitere Informationen