2015-04-08 68 views
0

我試圖完成一個簡單的進度,以我的網頁瀏覽器的控制,但不明白爲什麼我收到以下錯誤:webBrowser_ProgressChanged給予負輸出進度

"Value of '-1' is not valid for 'Value'. 'Value' should be between 'minimum' and 'maximum'. Parameter name: Value"

我不知道進度如何返回-1。

這是我目前已經試過代碼:

private void webBrowser1_ProgressChanged(object sender, WebBrowserProgressChangedEventArgs e) 
    { 
     int max = (int)e.MaximumProgress; 
     int current = (int)e.CurrentProgress; 
     int min = 0; 

     progressBar1.Minimum = 0; 
     progressBar1.Maximum = max; 
     progressBar1.Value = current; 
    } 

有沒有人能看到我可能會去錯了嗎?

+4

[WebBrowserProgressChangedEventArgs.CurrentProgress](https://msdn.microsoft.com/en-us/library/system.windows.forms.webbrowserprogresschangedeventargs.currentprogress%28v=vs.110%29.aspx):「*數字已加載的字節數,-1表示已下載完成。*「文檔是您的朋友。 –

+0

@ J.Steen好的,如果我在聲明值之後加上這個值,那麼它是合乎邏輯的:'if(current == -1){current = max;}' – EyeSeeSharp

+0

或多或少,是的。 –

回答

2

如果你讀了什麼WebBrowserProgressChangedEventArgs.CurrentProgress將包含文檔,它說,它是

"The number of bytes that have been loaded or -1 to indicate that the download has completed."

因此,這將會是合乎邏輯的假設是,當你得到的值-1,你的進度應完成 - 或者隱藏,但是你想要處理它。