请问怎么样在菜单栏的一个帮助按钮上点击后弹出我做好的.chm的帮助文档呢,谢谢
解决方案 »
- 请问用Marshal.SizeOf计算struct的大小,结果不对,谁能帮我解答?
- █████WebBrowser,多线程,尝试读取或写入受保护的内存。███████
- c#,怎样将指定数据库的所有表的关系用XML文件输出?
- C# networkstream 的 read 方法 提问 .........急用....麻烦高手进
- 窗体如何捕捉消息(任何消息)
- 怎样把DataReader()执行后的数据显示在网格,接下来怎么做
- web应用程序中的treeview构成问题,请大家指点
- c# 让textbox按什么就显示什么,如何显示Ctrl+A这样的复合键
- 暴炸新闻
- C#高手请进。
- 小妹求救,FileUpload控件的问题
- C#读写文件时出现文件未被释放问题,求教
Help.ShowHelp(this,"帮助文件位置");
你肯定菜单上也有帮助按钮的,有帮助按钮菜单的click事件里面写:System.Diagnostics.Process.Start("帮助文件位置"); 然后在窗体的KeyDown事件里面写: private void 测试窗体_KeyDown(object sender, KeyEventArgs e)
{
switch (e.KeyCode)
{
case Keys.F1:
帮助菜单_Click(this, EventArgs.Empty);//这里跟的是你的菜单事件名称
break;
}
}这样的话就可以F1调用了
那就需要一些代码来实现。
思路是:
1. 获取当前需要帮助的用户功能点(如楼主说的按钮)
2. 找到此功能点对应的帮助文档页
3. 弹出chm,跳转到当前文档第2点,需要楼主在某个地方做个映射,没问题。
第3点,楼上已经给了办法:
Help.ShowHelp(this, @"..\Release\Help\SALESSTOCKHELP.chm", "/OPManual/01Introduce/13BalanceMg/04StocksMoney/StocksMoney_CCon_01.htm");
关键就是第一步,可以考虑声明一个全局变量用来存放这个功能点id FunctionId,在这些控件mouse over的事件中赋值给FunctionId,在激活F1的事件中,根据当前FunctionId值,找到匹配的文档页,弹出文档。
搂主可以设置你的帮助菜单项的ShortcutKeys属性,把它设置为F1就可以了