【问题标题】:Progress Bar exception in Windows forms applicationWindows 窗体应用程序中的进度条异常
【发布时间】:2017-12-20 06:14:01
【问题描述】:

我正在尝试更新我的 windows 窗体应用程序的进度条,它基本上是一个下载 youtube 视频的应用程序。但是,我在进度条方法上收到一个名为“System.ArgumentOutOfRangeException”的异常。请帮我解决这个问题。谢谢! :)

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();
        }));
    }

【问题讨论】:

    标签: c# multithreading youtube progress-bar


    【解决方案1】:
    progressBarOverall.Minimum = 0;
    progressBarOverall.Minimum = 100;
    

    你的意思是第二个的最大值?

    progressBarOverall.Minimum = 0;
    progressBarOverall.Maximum= 100;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-09-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-27
      • 1970-01-01
      • 2013-12-10
      相关资源
      最近更新 更多