我希望在一个表单上添加一个Marquee样式的ProgressBar,以向用户显示某些操作正在进行。在耗时的操作期间,表单不会更新,因此ProgressBar也会“冻结”。
我已经查看了几篇关于BackgroundWorker的文章,但在我的情况下,该操作不报告进度,这就是为什么我需要一个Marquee bar。
非常感谢任何帮助或代码片段。
注意:我需要使用.NET 4.0(支持XP),所以我不能使用Task.Run :(
我已经查看了几篇关于BackgroundWorker的文章,但在我的情况下,该操作不报告进度,这就是为什么我需要一个Marquee bar。
非常感谢任何帮助或代码片段。
注意:我需要使用.NET 4.0(支持XP),所以我不能使用Task.Run :(
button1_Click(object sender, EventArgs e)
{
progressBar1.Style = ProgressBarStyle.Marquee;
progressBar1.MarqueeAnimationSpeed = 50;
// INSERT TIME CONSUMING OPERATIONS HERE
// THAT DON'T REPORT PROGRESS
Thread.Sleep(10000);
progressBar1.MarqueeAnimationSpeed = 0;
progressBar1.Style = ProgressBarStyle.Blocks;
progressBar1.Value = progressBar1.Minimum;
}