如何在 CHM 文件左侧的树视图中设置 Selected 项
Posted
技术标签:
【中文标题】如何在 CHM 文件左侧的树视图中设置 Selected 项【英文标题】:How to set the Selected item in the tree view on the Left side of CHM file 【发布时间】:2013-05-02 14:39:48 【问题描述】:我的 WPF 应用程序有一个 CHM 帮助文件。我的 CHM 文件包含我的应用程序每个页面的“htm”文件。当用户在该页面上按 F1 时,我想打开相应页面的帮助文件。现在我可以使用以下代码找到该页面并打开该页面:
Help.ShowHelp(this, helpfile, keywordText);
其中keywordText
包含我所选页面的 htm 文件的 URL。
但问题是,左侧的面板(树视图中的内容选项卡)没有扩展到在右侧窗口中打开的页面。左侧的面板始终保持不变。
如何将左侧的树形视图展开到所选页面?
【问题讨论】:
【参考方案1】:查看代码和小 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#VS2008 Project,包括上面的代码和带有不同帮助查看器窗口的帮助文件(不同的 CHM 文件仅用于展示案例)。
【讨论】:
【参考方案2】:谢谢。
问题出在 URL 中。
在此之前我给出了这样的网址
“Help.CHM::/html/MyHelp.htm”
当我从 URL 中删除“Help.CHM::/”时,一切正常......
【讨论】:
以上是关于如何在 CHM 文件左侧的树视图中设置 Selected 项的主要内容,如果未能解决你的问题,请参考以下文章
请问,CHM文件左侧目录乱码怎么解决?文件在别的电脑显示正常.
C# winform treeview 节点展开状态的图标设置