2011-10-27 59 views
-1

我一直在爲這個程序工作大約2周。我遇到了導航到頁面然後刷新頁面的問題。問題是它會導航和刷新,但因爲它看起來凌亂我想觸發一個「請稍候」的形式等待網頁導航和刷新

webBrowser.Navigate("www.thelineiamnavigatingto"); 
pleasewait.Show(); //shows the pleasewait form. 
while (webBrowser.ReadyState != WebBrowserReadyState.Complete) 
{ 
    Application.DoEvents(); 
} 

webBrowser.Refresh(); 
while (webBrowser.ReadyState != WebBrowserReadyState.Complete) //program Skips this 
{ 
    Application.DoEvents(); 
} 
pleasewait.Hide(); //Hides the pleasewait because the page is now ready 

我真的不能解釋爲什麼我需要再次刷新。我已經看過不刷新頁面,所以我必須這樣做。有沒有辦法重置「WebBrowserReadyState」,我相信瀏覽器加載的最新情況,然後它聲明「WebBrowserReadyState」有無論如何重置這個回不完整/等待? - 我希望這是因爲如果這一點代碼不尋找一個頁面刷新,然後我不知道下一步該怎麼做。所以當我刷新頁面並在第一個下面放置同樣的「While」循環時 - 它會跳過它?

是否有專家知道更好的方法來做到這一點?或修復我的代碼?我會非常感激。 非常感謝您的期待。

回答

0

我想瀏覽器保持其就緒狀態,因爲刷新過程對於相同的URL來說太快(甚至是立即)。

我認爲你並沒有專注於你的主要問題。第一次加載後不需要立即刷新頁面。如果您需要這樣做,那麼您的Web應用程序出現問題,現在您遇到了兩個問題。我會建議試圖找到另一種解決方案。

祝你好運:)