Вы увеличиваете высоту и ширину на три пикселя, это означает, что будет пропущено много чисел, и ваши операторы If настроены неправильно для этого.
Возьмите вашу ширину Заявление If например, вы говорите «Остановить, когда ширина больше или равна до 800», указав больше или равно в вашем выражении If, вы позволяете своему приложению расти больше желаемого размера, и, поскольку окно увеличивается на три, легко пропустить более 800.
Вы должны изменить свой код, чтобы увеличивать четные числа.
if(this.Width % 2 == 1)
this.Width += 3;
else if(this.Width % 2 == 0)
this.Width += 2;
if (this.Width >= 800)
{
timer1.Stop();
timer2.Start();
}
Приведенный выше код очень небрежный, но он должен работать до тех пор, пока вы не найдете лучшее решение или когда он не достигнет желаемого размера, измените его вручную, поскольку он должен быть отключен только на несколько цифр в соответствии с вашим опубликованным кодом.
this.Width += 3;
if (this.Width >= 800)
{
timer1.Stop();
this.Width == 800;
timer2.Start();
}