-2

I abandoned CHM HTMLHelp since I could not make it work from shared folders under Win7 at a customer. Now I have a help system for our WinForms application that consists of a myriad of HTML files in a diverse folder structure. The Help is in a folder named "help" next to the executable.

I use the

Help.ShowHelp(Control, HelpUrl, Keyword)

method to display the appropriate HTM file in the HelpUrl parameter. This is, however quite cumbersome, as if the file is renamed or moved to another folder, the help breaks. I wonder if there's another, more appropriate method for HTML file based help?

4

1 回答 1

0

显示帮助的属性(HTML 文件 - 本地)

激活 hlpProvider 组件 hlpHtmlLocal 并将 hlpHtmlLocal 的 HelpNameSpace 属性设置为您要使用的文件名。

在此处输入图像描述

我们使用右侧的小按钮打开带有对话框的本地 HTML 文件。

下一步是将控件(例如按钮)的 HelpNavigator 属性设置为 HelpNavigator 枚举的值(见下表)。这里我们使用主题。

在此处输入图像描述

当应用程序运行时,单击帮助按钮以启用“这是什么..”帮助。光标改变。现在单击按钮或在按钮获得焦点时按 F1。这将在您的浏览器中打开单个 HTML 文件。

看来您不能使用锚名称来跳转到 HTML 文件的特定部分。

显示帮助的属性(HTML 文件 - 服务器)

激活 hlpProvider 组件并将 hlpHtmlServer 的 HelpNameSpace 属性设置为您要使用的文件名。这里我们使用单个 HTML 文件的 http:// 地址。如果您在公司服务器上提供该文件,则无需向客户更新帮助文件。

在此处输入图像描述

下一步是将控件(例如按钮)的 HelpNavigator 属性设置为 HelpNavigator 枚举的值(见下表)。这里我们使用主题。然后我们将 hlpHtmlSever 属性上的 HelpKeyword 设置为例如“anchor3”。不要添加前导“#”。如果要打开没有锚点的 HTML 文件,请将其留空。帮助句柄 cmdControl2.Click Dim sHelpFile As String Dim sStartupPath As String '--- 初始化上下文相关帮助 --- Keyword 属性提供了检索与控件关联的帮助的关键信息。

在此处输入图像描述

当应用程序运行时,单击帮助按钮以启用“这是什么..”帮助。光标改变。现在单击按钮或在按钮获得焦点时按 F1。这将在您的浏览器中通过 Internet 打开单个 HTML 文件。

于 2013-11-13T16:06:58.693 回答