2017-12-20 17 views
0

私はWindowsフォームアプリケーションのプログレスバーを更新しようとしています。これは、基本的には、YouTubeのビデオをダウンロードするアプリケーションです。ただし、プログレスバーメソッドで 'System.ArgumentOutOfRangeException'という例外が発生します。これを解決するのを手伝ってください。ありがとう! :)Windowsフォームアプリケーションのプログレスバー例外

private void button1_Click(object sender, EventArgs e) 
    { 
     progressBarOverall.Minimum = 0; 
     progressBarOverall.Minimum = 100; 
     IEnumerable<VideoInfo> videos = DownloadUrlResolver.GetDownloadUrls(textBox1.Text); 
     VideoInfo video = videos.First(p => p.VideoType == VideoType.Mp4 && p.Resolution == Convert.ToInt32(cboResolution.Text));//converts video quality 
     if(video.RequiresDecryption) //Checks if video requiures decryption before downloading the URL 
      DownloadUrlResolver.DecryptDownloadUrl(video);// 
     VideoDownloader downloader = new VideoDownloader(video, Path.Combine(Application.StartupPath + "//", video.Title + video.VideoExtension)); 
     downloader.DownloadProgressChanged += Downloader_DownloadProgressChanged; 
     Thread thread = new Thread(() => { downloader.Execute(); }) { IsBackground = true }; 
     thread.Start(); 
} 



private void Downloader_DownloadProgressChanged(object sender, ProgressEventArgs e) 
    { 

     Invoke(new MethodInvoker(delegate() 
     { 
      progressBarOverall.Value = (int)e.ProgressPercentage; 
      percentagelabel.Text = $"{string.Format("{0:0.##}", e.ProgressPercentage)}%"; 
      progressBarOverall.Update(); 
     })); 
    } 

答えて

2
progressBarOverall.Minimum = 0; 
progressBarOverall.Minimum = 100; 

あなたは1秒間の最大の意味ですか?

progressBarOverall.Minimum = 0; 
progressBarOverall.Maximum= 100; 
関連する問題