4 ステップのプロセスで 4 つのプログレス バーを使用しようとしています。基本的にプログレス バーが使用されているのは、プロジェクトの実行に長い時間がかかるためです。通常使用される (10 で割る) 単一のプログレス バーを使用すると、プログレス バーが 20 分ごとに 1 スライバーを獲得することになります。(長すぎる。)
コードは次のとおりです。
backgroundWorker1.ReportProgress(a++);
if (a == 100)
{
backgroundWorker2.ReportProgress(b++);
a = 0;
}
if (b == 100)
{
backgroundWorker3.ReportProgress(c++);
b = 0;
}
if (c == 100)
{
c = 0;
d = 25;
}
backgroundWorker4.ReportProgress(d);
問題は、最初のプログレス バーが約 99% に達して停止し、2 番目のバーがまったく動かず、プロセスがまだ実行中であることです。