8 Stimmen

Text aus dem Speicher in das WebBrowser-Steuerelement laden

Auf der .Net WebBrowser-Steuerelement ist die einzige Möglichkeit, die ich sehen kann, um eine Seite zu laden, um die URL-Eigenschaft festgelegt. Aber ich möchte stattdessen geben es einige HTML-Code, die ich bereits im Speicher haben, ohne es in eine Datei zuerst zu schreiben. Gibt es eine Möglichkeit, dies zu tun? Oder gibt es irgendwelche Steuerelemente, die dies tun?

15voto

mspmsp Punkte 953

Sie möchten die DocumentText-Eigenschaft:

http://msdn.microsoft.com/en-us/library/system.Windows.forms.webbrowser.documenttext.aspx

?

von http://www.codeguru.com/forum/showpost.php?p=1691329&postcount=9 : Sie sollten auch ein paar Dinge zur Verfügung stellen:

  • Setzen Sie DocumentText nicht im Konstruktor. Verwenden Sie Form_Load oder Ihre eigene Methode. Wenn Sie DocumentText im Konstruktor setzen, können Sie es nirgendwo in der Anwendung wieder setzen. Vergewissern Sie sich, dass der Formulardesigner ihn auch nicht gesetzt hat.

  • Sie können DocumentText nur einmal pro Methodenaufruf setzen. Das ist merkwürdig und wahrscheinlich ein Fehler, aber es ist wahr. Ein Beispiel: Das Setzen von DocumentText in einer for-Schleife wird nur bei der ersten Iteration der Schleife richtig gesetzt. Sie können jedoch eine kleine Methode erstellen, um DocumentText auf die übergebene Zeichenfolge zu setzen, und diese Methode dann in einer for-Schleife aufrufen.

2voto

Franci Penov Punkte 73239

Sie verwenden entweder WebBrowser.DeocumentText ( http://msdn.microsoft.com/en-us/library/system.Windows.forms.webbrowser.documenttext.aspx ) oder WebBrowser.DocumentStream ( http://msdn.microsoft.com/en-us/library/system.Windows.forms.webbrowser.documentstream.aspx ), um den HTML-Code im aktuellen Dokument zu ändern. Möglicherweise müssen Sie zu about:blank navigieren, wenn Sie kein Dokument haben.

0voto

Lou Franco Punkte 85315

Außerdem können Sie überall, wo Sie einen Stream verwenden können, auch MemoryStream verwenden, um Daten im Speicher zu verpacken.

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