2011-06-03 51 views
0

我使用WebBrowser加載網頁,拍攝屏幕截圖並將其保存到磁盤。有時網頁引用的背景圖像未加載。我的想法是,它沒有時間加載。不過,我正在檢查網頁是否準備好以下內容....net WebBrowser未加載參考圖像

 while (wb.ReadyState != WebBrowserReadyState.Complete) 
     { 
      Application.DoEvents(); 
     } 

任何想法爲什麼背景圖像可能只是有時丟失?

乾杯,伊恩。

回答

1

這不夠好。也是用戶崩潰程序的絕佳方式:在加載時關閉窗口。

您必須使用DocumentCompleted事件。如果網頁是由多個框架構成的,請確保e.Url與瀏覽器的Url匹配。該頁面可能仍然會被javascript進一步修改,除了使用計時器之外,您無法做太多的工作。

+0

此代碼正在運行作爲一個Web請求的結果,所以它仍然可能掛起循環?此外,我不確定如何使用DocumentCompleted並阻止事件發生。但無論哪種方式,我不明白爲什麼WebBrowserReadyState.Complete將由WebBrowser設置,但事實並非如此。 – 2011-06-03 10:59:46

+0

你沒有看到它?奇怪,你的問題肯定聽起來像你一樣。這是正常的。 – 2011-06-03 11:06:45

+0

我不明白? – 2011-06-03 11:59:36