2014-01-08 81 views
0

我正在使用Web瀏覽器控件加載標籤中包含的一些HTML內容的窗體窗體上工作。以windows窗體設置web瀏覽器控件的innerHtml屬性

現在,當我想設置的

 WebBrowserCntrl.Navigate("about:blank"); 
     HtmlDocument doc = this.WebBrowserCntrl.Document; 
     doc.Write(String.Empty); 
WebBrowserCntrl.Document.Body.InnerHTML= datacontractclass.datamember(string) 

它拋出異常,因爲值「未設置爲一個對象的實例對象引用。」 但是,當我做其他的方式..

WebBrowserCntrl.DocumentText="<style>....</style>" WebBrowserCntrl.DocumentText= datacontractclass.datamember(string) 它的工作原理。 但是後來我無法改變網頁瀏覽器的風格(就像我上面應用的任何風格)

爲什麼我得到這個異常或者是否有其他方式來追加風格和其他HTMl內容。

回答

0

你可以試試這個:

webBrowser.DocumentText = string.Empty; // reset whatever is in the browser 

// Either this: 
HtmlDocument doc = webBrowser.Document.OpenNew(true); 
doc.Write(yourHtml); 
webBrowser.Refresh(); 

// Or: 
webBrowser.Document.OpenNew(true); 
webBrowser.Document.Write(html); 
webBrowser.Refresh(); 

您可以使用HtmlTextWriter如果你需要它裏面的造型來創建HTML。例如,如果你想使用外部的CSS文件,你可以在你的頭部做到這一點:

htw.AddAttribute(HtmlTextWriterAttribute.Rel, "stylesheet"); 
htw.AddAttribute(HtmlTextWriterAttribute.Type, "text/css"); 
htw.AddAttribute(HtmlTextWriterAttribute.Href, pathToCssFile); 
htw.RenderBeginTag(HtmlTextWriterTag.Link); 
htw.RenderEndTag(); 
相關問題