gpt4 book ai didi

c# - 在 WPF 中使用 F1 帮助(CHM 格式)

转载 作者:IT王子 更新时间:2023-10-29 04:45:45 25 4
gpt4 key购买 nike

我已经在 WPF 应用程序上工作了一段时间,是时候将 CHM 格式的帮助文档附加到它了。

但是,唉! HelpProvider 是在 Winforms 中显示 CHM 文件的标准方式,它神奇地消失了,并且在 WPF 中没有对应物。我一直在尝试使用 WindowsFormsHost 生成一个新控件,这样我就可以实际显示帮助,但实际上它只是获取了整个 UI 的控制权。

更多细节:我有一个菜单项,我想要在单击时打开 CHM 文件。

首先我设置了 WindowsFormsHost...

host = new System.Windows.Forms.Integration.WindowsFormsHost();
helpForm = new System.Windows.Forms.Control();
host.Child = helpForm;
host.Visibility = System.Windows.Visibility.Hidden;
this.grid1.Children.Add(host);

hp = new System.Windows.Forms.HelpProvider();
hp.HelpNamespace = "Somehelpfile.chm";
hp.SetHelpNavigator(helpForm, System.Windows.Forms.HelpNavigator.TableOfContents);

然后我说,瞧,展示你自己。

private void Help_Click(object sender, RoutedEventArgs e)
{
host.Visibility = Visibility.Visible;
helpForm.Show();
hp.SetShowHelp(helpForm, true);
}

我不太确定从哪里开始。当我显示 helpForm 时,它会遮盖/覆盖现有的 UI,我得到的只是一个没有帮助文件的灰色空 WPF 窗口。

有人要吗?

最佳答案

如果您包含 System.Windows.Forms.dll,您还可以:

System.Windows.Forms.Help.ShowHelp(null, @"help.chm");

此外,还有一篇文章 here关于向 WPF 添加上下文相关的帮助系统。

关于c# - 在 WPF 中使用 F1 帮助(CHM 格式),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/928122/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com