这个问题来自社区提问,代码保留一份用来以后回答
| using System; using System.ComponentModel; using System.Windows.Forms; namespace WindowsApplication4 ...{ /**//// <summary> /// gui 类 /// </summary> public partial class Form1 : Form ...{ public Form1() ...{ InitializeComponent(); } private void button1_Click(object sender, EventArgs e) ...{ //用子线程工作 new System.Threading.Thread(new System.Threading.ThreadStart(StartDownload)).Start(); } //开始下载 public void StartDownload() ...{ Downloader downloader = new Downloader(); downloader.onDownLoadProgress += new Downloader.dDownloadProgress(downloader_onDownLoadProgress); downloader.Start(); } //同步更新ui void downloader_onDownLoadProgress(long total, long current) ...{ if (this.InvokeRequired) ...{ this.Invoke(new Downloader.dDownloadProgress(downloader_onDownLoadProgress), new object[] ...{ total, current }); } else ...{ this.progressBar1.Maximum = (int)total; this.progressBar1.Value = (int)current; } } } /**//// <summary> |
