Freigeben über


CommandManager.AddPreviewCanExecuteHandler Methode

Definition

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

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)

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 einen angefügt, bei dem es sich um Button eine Befehlsquelle für den Help Befehl handelt.

Zuerst wird erstellt Button 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

Schließlich werden die Handler mithilfe von ButtonAddCanExecuteHandler und AddExecutedHandleran den angefügt.

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

Gilt für:

Weitere Informationen