.NET为大型应用程序提供F1帮助

时间:2010-02-24 11:56:17

标签: .net winforms

我如何为.Net应用程序提供F1帮助支持。

应用程序由多个具有多个字段的表单组成。所以我不想在每个表单上删除HelpProvider控件并设置属性。 请告诉我任何可以解决此问题的组件。

2 个答案:

答案 0 :(得分:2)

我想你可以实现一个继承Form的类并添加一个HelpProvider,然后从该类继承你的表单。这样,您只需要设置属性

表格 - > AppFormBase - > ConcreteForm

Public Class AppFormBase
  Inherits Form ' Your original base class

  Public Sub New()
    ' Add HelpProvider to Me.Controls
  End Sub
End Class

Public Class MyActualForm ' Your original form.
  Inherits AppFormBase

End Class

答案 1 :(得分:0)

对于 WPF ,您可以执行以下操作:

CommandBinding HelpBinding = new CommandBinding(
            ApplicationCommands.Help,
            ShowHelpHandler,
            CanShowHelpHandler);
CommandManager.RegisterClassCommandBinding(typeof(Window), HelpBinding);

其中ShowHelpHandlerCanShowHelpHandler被声明为

static void ShowHelpHandler(object sender, ExecutedRoutedEventArgs e)
{
    ...
}
static void CanShowHelpHandler(object sender, CanExecuteRoutedEventArgs e)
{
    ...
}

这将在所有窗口注册绑定到F1的帮助命令。