361 Aufrufe
Gefragt in Anwendungen(Java,C++...) von
Hallo zusammen,
ich öffnen in einem Wbbrowserelement unterschiedliche html-Seiten und scrolle diese bis zum Ende durch.
Dafür lese ich die Fenster und Browserhöhe aus.
Bei html-Datei funktioniert das prima, bei pdf-Dateien bekomme ich einen Fehler bei:
            lSeitenhoehe = WebBrowser1.Document.Body.ScrollRectangle.Height
            lFensterhoehe = WebBrowser1.Document.Window.Size.Height
==> an unhandled exception of type "System.NullReferendeException" occured in Meindateiname.exe | Additional information: Object referende not set to an instance of an object.
Wie kann ich das für pdf-Dateien lösen?
P.S. Lassen sich in dem Webbrowser auch irgendwie Excel-Dokuemnte darstellen?
Danke und Gruß
Jürgen

1 Antwort

0 Punkte
Beantwortet von repiv Mitglied (272 Punkte)
Hallo,
ich versuch mich mal an einer Erklärung, auch wenn mir noch nicht ganz klar ist wozu die Seitenhöhe und Fensterhöhe benötigt wird:

Die Exception dürfte auftreten, da das Webbrowser-Steuerelement nur PDF-Dateien anzeigen kann, wenn ein entsprechendes Plugin (z.B. von Adobe) für den Internet Explorer installiert ist. Ansonsten wird die PDF-Datei nur heruntergeladen. Da das PDF nicht mehr im Webbrowser selbst läuft, wird wohl Document.Body = Nothing sein => Exception

Zu der Frage mit Excel im Webbrowser:
hier gibts einen Artikel, aber wohl nur bis Office 2007
[url]https://support.microsoft.com/en-us/help/304643[/url]
vielversprechender wäre der Ansatz ein Excel Dokument per Interop Com von Excel nach HTML konvertieren zu lassen und dann das HTML im Webbrowser Control anzuzeigen. z.B. hier als Beispiel:
[url]https://codinglight.blogspot.de/2008/10/simple-docbrowser-control.html[/url]
Ansonsten kann man auch mal bei Anbietern wie Telerik/DevExpress nach einem alternativen Steuerelement suchen. Kostet aber meist Geld.

Gruß Martin
...