Я некоторое время работал над приложением WPF, и пришло время приложить к нему документ с поддержкой формата CHM.
Но, увы! HelpProvider, стандартный способ показать CHM файлы в Winforms, волшебным образом исчез и не имеет аналогов в WPF. Я пытаюсь использовать WindowsFormsHost для создания нового элемента управления, чтобы я мог фактически отобразить справку, но по существу он просто захватывает весь пользовательский интерфейс.
Немного подробней: у меня есть пункт меню, который я хочу, при нажатии, открыть 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, он скрывает/отменяет существующий пользовательский интерфейс, и все, что я получаю, представляет собой серое пустое окно WPF без файла справки.
Любые берущие?