【发布时间】:2014-01-03 20:30:15
【问题描述】:
我创建了一个使用 ftp 在服务器中上传文件的程序。现在我想在服务器中上传文件时使用进度条。表示文件上传时进度条从value=0开始,上传时进度条的值增加,上传完成时的值为最大值,然后返回默认值;
我上传没有问题,只是我在服务器中上传文件时不知道如何使用进度条。
请帮帮我。
private void button1_Click(object sender, EventArgs e) { if (openFileDialog1.ShowDialog() == DialogResult.OK) { backgroundWorker1.RunWorkerAsync(); Upload(@openFileDialog1.FileName); } else { }
private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
{
for (int i = 1; i <= 100; i++)
{
Thread.Sleep(2);
backgroundWorker1.ReportProgress(i);
}
}
private void backgroundWorker1_ProgressChanged(object sender, ProgressChangedEventArgs e)
{
progressBar1.Value = e.ProgressPercentage;
this.Text = e.ProgressPercentage.ToString();
}
【问题讨论】:
-
当你加载一个文件时,你可以从 FileInfo 中获取文件的大小,比如 X。然后你可以创建一个缓冲区来移动具有标准缓冲区大小 Z 的文件。然后块百分比是 Z/X*每次写入缓冲区后刷新流时为 100。
标签: c#