Я могу быть совершенно не прав с этим ответом в соответствии с тем, что ccKep только что упомянул в своем комментарии.
Но на всякий случай, если это то, что вы ищете, я собрал это вместе.
Основная идея заключается в наличии события таймера, управляющего приращением.Даже если код, который я отправляю, не подходит, возможно, идея подойдет.
public int percentage;
public int Percentage
{
get { return percentage; }
set
{
percentage = value;
if (Percentage >= 0 && Percentage < 100)
{
progressBar1.Value = value;
}
else
{
Percentage = 0;
timer1.Stop();
}
}
}
private void button1_Click(object sender, EventArgs e)
{
Percentage = 0;
timer1.Interval = 1000;
timer1.Start();
}
private void timer1_Tick(object sender, EventArgs e)
{
double addValue = 100 / 3;
Percentage += (int)addValue;
}