我的应用程序中有一个进度条,它应该做的是等于计数器值。进度条的最大值为 100,最小值为 0。当程序运行时,它只会增加一个很小的百分比。
while (counter < numericUpDown1.Value)
{
timer1.Start();
client.Send(message);
counter++;
timer1.Stop();
progressBar1.Value = counter;
}
我的应用程序中有一个进度条,它应该做的是等于计数器值。进度条的最大值为 100,最小值为 0。当程序运行时,它只会增加一个很小的百分比。
while (counter < numericUpDown1.Value)
{
timer1.Start();
client.Send(message);
counter++;
timer1.Stop();
progressBar1.Value = counter;
}
您已将最大值设置为 100,因此请确保您的计数器达到 100。放入并尝试一下
progressBar1.Maximum = (int)numericUpDown1.Value;
Fabio 是正确的,如果 numericdown1 只有 5,您的进度条只会增加到 5,因此您需要执行 (NumberDown1.Value / 100) * 100 之类的操作来获得应该增加进度条的内容(在 while 循环之前,而不是在里面)。然后,如果它的 winforms 或其 WPF 使用 Dispatcher,我将创建一个委托以使用您的值更新 UI 线程。
Application.DoEvents();
也许您每次更改其值时都需要使用。