CommandManager.AddCanExecuteHandler 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
将指定的 CanExecuteRoutedEventHandler 元素附加到指定的元素。
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)
参数
- element
- UIElement
要附加到 handler 的元素。
- handler
- CanExecuteRoutedEventHandler
可以执行处理程序。
例外
element 或 handler 为 null.
示例
以下示例创建一个和一个CanExecuteRoutedEventHandlerExecutedRoutedEventHandler命令,并将其Button附加到该命令的命令源Help。
<Button Command="ApplicationCommands.Help"
Name="helpButton">Help</Button>
接下来,创建 CanExecuteRoutedEventHandler 和 ExecutedRoutedEventHandler 创建。
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
最后,处理程序附加到 Button using AddCanExecuteHandler and AddExecutedHandler.
CommandManager.AddExecutedHandler(helpButton, HelpCmdExecuted);
CommandManager.AddCanExecuteHandler(helpButton, HelpCmdCanExecute);
CommandManager.AddExecutedHandler(helpButton, AddressOf HelpCmdExecuted)
CommandManager.AddCanExecuteHandler(helpButton, AddressOf HelpCmdCanExecute)