小编dob*_*gab的帖子

C# - 带有Marquee样式的ProgressBar

我想在带有Marquee样式的表单上添加ProgressBar,以向用户显示正在进行的操作.在耗时的操作期间,表单不会更新,因此ProgressBar也会"冻结".

我查了几篇关于BackgroundWorker的帖子,但在我的情况下,操作不会报告进度,这就是我需要一个Marquee栏的原因.

任何帮助或代码片段都表示赞赏.

注意:我需要使用.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;

}
Run Code Online (Sandbox Code Playgroud)

c# progress-bar

2
推荐指数
1
解决办法
1万
查看次数

标签 统计

c# ×1

progress-bar ×1