2011-06-09 82 views
3

我有一個帶有嵌入式Web瀏覽器控件的窗體。我目前使用WebBrowser並使用它像這樣:Windows窗體中的嵌入式WebBrowser C#項目

webBrowser1.Navigate("about:blank"); 
HtmlDocument doc = this.webBrowser1.Document; 
doc.Write(string.Empty); 
String htmlContent = GetHTML(); 
doc.Write(htmlContent); 

這正確地寫入HTML的Web瀏覽器的控制,但它從來沒有清除現有的數據,它只是追加,所以我結束了N個Web頁堆疊上彼此頂部。

這是最好的控制使用?如果是這樣,爲什麼它不清除現有數據?

回答

3

您需要使用:

HtmlDocument doc = this.webBrowser1.Document.OpenNew(true); 

現在該文件的內容將被清除寫入之前。

所有這些都需要寫應以OpenNew一個電話,這將清除 當前文檔及其所有 變量的前面 。您撥打Write的電話 會在其 位置創建一個新的HTML文檔。要僅更改文檔的特定部分 ,請獲取 合適的HtmlElement並設置其 InnerHtml屬性。

+0

現貨,謝謝 – Chris 2011-06-09 15:30:44

+0

不客氣。 – 2011-06-09 15:46:00

0

呼叫HtmlDocument.OpenNew頁面之間:

OpenNew將刪除此前加載 文件,包括任何相關的 狀態,如變量。不會導致 導致WebBrowser 中的導航事件被引發。

相關問題