我想要做的是,如果我检查计数器== 10那么progressBar将跳过10秒,直到100。 如果我会在counter == 20时生成,那么progressBar应该跳过20,直到100。
private void NewsUpdate()
{
counter += 1;
progressBar1.Value = (int)Math.Round((counter / 10f) * 100);
label9.Text = counter.ToString();
label9.Visible = true;
if (counter == 10)
{
Extractions();
counter = 0;
progressBar1.Value = 0;
}
}
我在计时器滴答事件中调用此方法,timer1间隔设置为1000毫秒 现在发生的事情是,progrsssBar1在9次之后移动到90%,然后在0次移动到0到0之后达到90%。它到底是不是达到了100%? / p>
答案 0 :(得分:4)
请改为:
PprogressBar1.Maximum = YourMaximumValue; // like for example 1,000,000
然后递增1
Counter += 1;
ProgressBar1.Value = Counter;
您的问题中的公式会产生小数,该小数始终小于100(如98.55)。
答案 1 :(得分:2)
当计数器等于10时,进度为100%。但是,您要设置progressBar1.Value = 0;所以它在UI更新之前永远不会达到100%。