Bagikan melalui


CommandManager.AddCanExecuteHandler Metode

Definisi

Melampirkan yang ditentukan CanExecuteRoutedEventHandler ke elemen yang ditentukan.

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

Elemen yang akan dilampirkan handler .

handler
CanExecuteRoutedEventHandler

dapat menjalankan handler.

Pengecualian

element atau handler adalah null.

Contoh

Contoh berikut membuat CanExecuteRoutedEventHandler dan ExecutedRoutedEventHandler dan melampirkannya ke yang Button merupakan sumber perintah untuk Help perintah.

Pertama, Button dibuat dan dikaitkan dengan Help perintah .

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

Selanjutnya, CanExecuteRoutedEventHandler dan ExecutedRoutedEventHandler dibuat.

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

Dan akhirnya, handler dilampirkan ke Button menggunakan AddCanExecuteHandler dan AddExecutedHandler.

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

Berlaku untuk

Lihat juga