20 Stimmen

Verwendung der F1-Hilfe (CHM-Format) mit WPF

Ich habe eine Weile an einer WPF-Anwendung gearbeitet, und es ist an der Zeit, das Hilfedokument im CHM-Format anzuhängen.

Aber ach! HelpProvider, die Standardmethode zum Anzeigen von CHM-Dateien in Winforms, ist auf magische Weise verschwunden und hat kein Gegenstück in WPF. Ich habe versucht, WindowsFormsHost zu verwenden, um ein neues Steuerelement zu erzeugen, so dass ich tatsächlich die Hilfe anzeigen kann, aber im Wesentlichen greift es nur die Kontrolle über die gesamte UI.

Ein wenig mehr Details: Ich habe einen Menüpunkt, der, wenn er angeklickt wird, die CHM-Datei öffnen soll.

Zuerst habe ich den WindowsFormsHost eingerichtet...

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);

Und dann sage ich, voila, zeige dich.

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

Ich bin mir nicht sicher, wie es jetzt weitergehen soll. Wenn ich die helpForm zeigen, es verdunkelt / überschreibt die vorhandene UI und alles, was ich bekomme, ist eine graue, leere WPF-Fenster mit keine Hilfe-Datei.

Hat jemand Lust?

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X