如何更改 WebBrowser所加載的 HTML元素
方法1:在網頁加載完畢后的事件里面添加代碼,我這里只是修改網頁不出現滾動條,因為滾動條我重寫了。
1 #region (private) 網頁加載完成后執行回調的函數 2 3 /// <summary> 4 /// 網頁加載完成后執行回調的函數,在這初始化滾動條的參數 5 /// </summary> 6 private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) 7 { 8 if (this.webBrowser1.ReadyState == WebBrowserReadyState.Complete) 9 { 10 HtmlElementCollection bodys= this.webBrowser1.Document.GetElementsByTagName("body"); 11 HtmlElement body=null; 12 if (bodys.Count>0) 13 body=bodys[0]; 14 if( body != null ) 15 { 16 if( body.Style != null ) 17 body.Style += " overflow: hidden; "; 18 else 19 body.Stle = " overflow: hidden; "; 20 } 21 } 40 } 41 #endregion
方法2:直接對DocumentTex內容進行修改
1 private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) 2 { 3 if (this.webBrowser1.ReadyState == WebBrowserReadyState.Complete) 4 { 5 try 6 { 7 string strHTML= this.webBrowser1.DocumentText; 8 strHTML = "這里修改你要動的地方"; 9 this.webBrowser1.DocumentText = strHTML; 11 } 12 catch 13 { 14 } 15 16 } 17 }
方法3:大伙常說的
this.webBrowser1.Document.Body.SetAttribute( "scroll","no");
總結: 在這里說明一下此方法跟第一種方法的區別, 第一種方法修改后,在呈現的網頁右鍵查看源代碼是看不到修改后的內容,
但在webBrowser1.Document.Body.OuterHtml屬性里面可以看的到,
第二種方法修改后則右鍵查看源代碼也可看的到,有關其它更深入的區別,作為菜鳥的我還是沒有去關心了,
方法3,不是很靈活,有時還沒用
我用的是第一種方法