CommandManager.AddCanExecuteHandler Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
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)