2012-08-28 112 views
1

我有一個應用程序,加載頁面時動態加載iframe。 當我通過Web瀏覽器控制自動執行該應用程序時,我得到腳本錯誤,因爲java腳本沒有完全加載到iframe中。如何檢查Webbrowser文件是否完成加載?

我檢查DocumentCompleted事件,仍然沒有運氣瀏覽器的就緒狀態...

if (this.browser.ReadyState != System.Windows.Forms.WebBrowserReadyState.Complete) 
      return; 
     else 
     { 
// do automation 
    } 
+0

做它正確地檢查了我在一些我以前的答案中提供的一些提示,不幸的是,可用的在線方法不夠可靠,但如果你實現了我在標籤webbrowser-control下提供的想法,你將得到一個更好的想法如何可靠地做到這一點。 –

回答

0

您可以使用此代碼的嘗試,在布爾屬性encapsulte這

  if (this.WebBrowser.ReadyState != System.Windows.Forms.WebBrowserReadyState.Complete) 
       return false; 

      if (this.HtmlDomDocument == null) 
       return false; 

      foreach (IHTMLDOMNode node in this.HtmlDomDocument.all) 
      { 
       IHTMLFrameBase2 frame = node as IHTMLFrameBase2; 
       if (frame != null) 
       { 
        if (!frame.readyState.Equals("complete", StringComparison.OrdinalIgnoreCase)) 
         return false; 
       } 
      } 

      return true; 
相關問題