C#如何使用选取框进度条加载表单?

时间:2010-12-21 13:09:08

标签: c# winforms progress-bar marquee

我创建了一个只带有字幕样式的进度条的loadingForm。在我的mainForm中,我试图这样做:

//before downloading
loadingForm lf = new loadingForm();
lf.Show();
//start downloading
//finishdownloading
lf.Close();

显示了loadingForm但没有出现进度条,表格看起来像是崩溃了。完成下载后,loadingForm关闭,我的应用程序继续正常运行。在loadingForm我只有:

void loadingForm_Load(object sender, EventArgs e)
{
     progressbar1.visible = true;
}

我已经将progressbar1样式设置为loadingForm.design中的marquee。我该如何解决?谢谢你的帮助。

2 个答案:

答案 0 :(得分:3)

您应该看一下使用BackgroundWorker Class进行耗时的操作,以便UI可以在后台工作线程完成工作时继续显示进度。

答案 1 :(得分:1)

这很可能是因为下载和带有进度条的表单在同一个线程上运行。您可以使用BackgroundWorker在与表单不同的线程中执行下载。