当前位置 - 股票行情交易網 - 裝修設計 - 如何判斷C#webbrower頁面是否加載完畢方法

如何判斷C#webbrower頁面是否加載完畢方法

方法/步驟

壹種方法:////////計數器遞增函數//////// public void counteradd(object sender,

EventArgs

e) { counter++;//壹次navigated就加壹次 }/////////頁面加載

完要執行的函數///////////public void go(object sender, EventArgs

e) { counter4--;//壹次completed就減壹次 if

(0 == counter4)//等於0表示剛好加載完鳥

{ 要幹什麽就寫這裏了 }}/////////把事件handle壹下

/////////this.webBrowser1.Navigated += new

System.Windows.Forms.WebBrowserNavigatedEventHandler(counteradd);

this.webBrowser1.DocumentCompleted += new

WebBrowserDocumentCompletedEventHandler(go);

二種方法:若是壹個頁面中含有多個框架頁,那麽在每個框架頁加載完成時也可能觸發壹次DocumentCompleted事務(MSDN對其申明是在多個

的幀的景象下DocumentComplete獲取觸發多次。並非每個框架將觸發此事務,但觸發DownloadBegin事務的每個框架將觸發響應的

DocumentComplete事務)。 this.webBrowser1.DocumentCompleted += new

WebBrowserDocumentCompletedEventHandler(go); private void go(object

sender, WebBrowserDocumentCompletedEventArgs e) { if

(e.Url.ToString() !=

webBrowser1.Url.ToString()) return;//不斷拒絕,只有URL是

webbrowser1的navigate地址才接受 else {

要幹什麽就寫這裏了 }}

3

三種方法:WebBrowser載入壹個頁面後DocumentCompleted事務會履行兩次,但這兩次的ReadyState狀況不壹樣,分別是

Intercative和Complete。而MSDN對這兩種狀況值的申明是:Complete該控件已完成新文檔及其所有內容的加

載;Interactive該控件已經加載足夠的文檔以容許有限的用戶交互,比如單擊已顯示的超鏈接。由此可見,實際上

DocumentCompleted事務會在Interactive狀況和Complete狀況各調用壹次,那麽我們可以按照我們的須要來斷定到底須要那

壹次。解決辦法實例代碼如下: this.webBrowser1.DocumentCompleted += new

WebBrowserDocumentCompletedEventHandler(go); private void go(object

sender, WebBrowserDocumentCompletedEventArgs

e) {if(webBrowser1.ReadyState !=

WebBrowserReadyState.Complete) return; else{

要幹什麽就寫這裏了}}基本就三種方法了,在有firame的頁面裏面,第壹種=第二種+第三種,自己想想為什麽。再搞不定那就只能god bless

you 了,別找piikee了。