C# 如何在CHM文件左侧的树状图中设置所选项目
我有一个用于WPF应用程序的CHM帮助文件。我的CHM文件包含应用程序每个页面的“htm”文件。当用户在相应页面上按F1键时,我想打开该页面的帮助文件。现在,我可以使用以下代码找到该页面并打开该页面:C# 如何在CHM文件左侧的树状图中设置所选项目,c#,wpf,winforms,chm,C#,Wpf,Winforms,Chm,我有一个用于WPF应用程序的CHM帮助文件。我的CHM文件包含应用程序每个页面的“htm”文件。当用户在相应页面上按F1键时,我想打开该页面的帮助文件。现在,我可以使用以下代码找到该页面并打开该页面: Help.ShowHelp(this, helpfile, keywordText); 其中keywordText包含所选页面的我的htm文件的URL 但问题是,左侧的面板(树状视图中的“内容”选项卡)没有扩展到在右侧窗口中打开的页面。左侧的面板始终保持不变 如何将左侧的树视图展开到所选页面?查
Help.ShowHelp(this, helpfile, keywordText);
其中keywordText
包含所选页面的我的htm文件的URL
但问题是,左侧的面板(树状视图中的“内容”选项卡)没有扩展到在右侧窗口中打开的页面。左侧的面板始终保持不变
如何将左侧的树视图展开到所选页面?查看代码和小GUI(附快照)。用户按钮单击后,主题将刷新(例如帮助主题1) 请注意,使用Microsoft HTMLHelp Workshop创建的帮助文件可能需要自动同步参数
private void btnHelpTopic1_Click(object sender, EventArgs e)
{
// sHTMLHelpFileName_ShowWithNavigationPane = "CHM-example_ShowWithNavigationPane.chm"
// This is a HelpViewer Window with navigation pane for show case only
// created with Microsoft HTMLHelp Workshop
helpProvider1.HelpNamespace = Application.StartupPath + @"\" + sHTMLHelpFileName_ShowWithNavigationPane;
Help.ShowHelp(this, helpProvider1.HelpNamespace, @"/Garden/tree.htm");
}
private void btnHelpTopic2_Click(object sender, EventArgs e)
{
helpProvider1.HelpNamespace = Application.StartupPath + @"\" + sHTMLHelpFileName_ShowWithNavigationPane;
Help.ShowHelp(this, helpProvider1.HelpNamespace, @"/Garden/flowers.htm");
}
为了下载,我提供了一个C#,包括上面的代码和带有不同帮助查看器窗口的帮助文件(不同的CHM文件仅用于演示案例)。谢谢
问题在于URL
在此之前,我给出了这样一个URL
“Help.CHM::/html/MyHelp.htm”
当我从URL中删除“Help.CHM::/”时,一切都很顺利