日期:2014-05-20  浏览次数:20773 次

帮助文件总是挡在前面
使用helpProvider控件和Help.ShowHelp方法打开的帮助文件窗口总是挡在调用窗口的前面,这个问题怎么才能解决?
另外System.Diagnostics.Process.Start()方式打开的帮助文件无法跟随应用程序关闭和定位帮助内容,我不需要这个答案。
实现的效果需要和windows的   “企业管理器”一样。

------解决方案--------------------
那要用API了,参见如下:
[DllImport( "user32.dll ", CharSet = CharSet.Auto, ExactSpelling = true)]
public static extern IntPtr GetDesktopWindow();
[DllImport( "hhctrl.ocx ", CharSet = CharSet.Auto)]
public static extern int HtmlHelp(IntPtr hwndCaller, [MarshalAs(UnmanagedType.LPTStr)] string pszFile, int uCommand, int dwData);
private void button1_Click(object sender, EventArgs e)
{
HtmlHelp(GetDesktopWindow(), @ "D:\帮助文件.CHM ", 0, 0);
}

这样可以做到当当前程序关闭的时候帮助文件也会跟着关闭.楼主试下.
------解决方案--------------------
up