C# - 如何使用帮助提供程序显示帮助文件?

标签 c# .net winforms chm

我正在试验帮助文件和帮助提供者。

我的问题是我无法在不与其他帮助提供程序代码冲突的情况下显示帮助文件。

helpProvider1.SetShowHelp(btnFont, true);
helpProvider1.SetHelpString(btnFont, "Change the font.");

helpProvider1.HelpNamespace = "helpfile.chm";

HelpNamespace 属性优先于 SetHelpString 方法,但我仍想显示这些帮助字符串。

使用另一个热键是唯一的选择吗?

最佳答案

Windows 窗体支持对单个控件的“这是什么..”帮助(弹出式帮助)。 HELP 按钮在对话框上很有意义,因为模式对话框需要在焦点转到另一个窗口之前关闭。我认为将以下示例从 VB 转换为 C#(一些旧东西,但 HTH)对您来说不是问题。当然,所有这些都有一个学习曲线。

参见 Creating Pop-up Help for Visual Basic .NET controls

请注意:Windows 窗体 HelpProvider 组件用于将 HTML 帮助文件(HTMLHelp 1.x、Help 2.x 或单个 HTML 文件)与您的 Windows 应用程序相关联。 HelpString 属性可用于显示弹出式帮助,但您必须设置 hlpProvider1 的 HelpNamespace 属性(参见 HTML Help)。如果没有文件名并且用户按 F1,则应用程序运行时出错。

有关更多信息,另请参阅 Compiled HTML Help file shows "This program cannot display...", when pressing F1 on the debugged application .

关于C# - 如何使用帮助提供程序显示帮助文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43891953/

相关文章:

c# - 获取 C# 方法体内使用的类型

c# - 用户控制允许删除

c# - 将字符串解析为没有斜杠的日期

c# - 对于 C# 列表,如何在一条记录的值更改时对列重新排序?

c# - 如何绑定(bind)到 DynamicResource 以便可以使用 Converter 或 StringFormat 等? (修订版 4)

c# - 之间的Linq性能

.net - 从 3.5 调用 .NET 4 库

c# - 如何简化在主窗体和子窗体之间传递的设置值的代码

c# - 图像未在 asp webapp 中解析 (c#)

c# - 我可以使用 Windows Azure 通知中心将推送通知从 Windows 8 发送到 Windows Phone 8 吗?