定时器如何在.net中工作?

时间:2017-01-16 08:34:58

标签: c# timer

我激活了我的Windows计时器并尝试停止但似乎没有工作,请参阅我的代码:

private void button1_Click(object sender, EventArgs e)
{
        timer1.Start();
}

private void timer1_Tick(object sender, EventArgs e)
{
        MessageBox.Show("Hello");
        timer1.Stop();
}

它反复显示消息,但不会停止。请给我一些想法,我非常感谢你的帮助。

2 个答案:

答案 0 :(得分:2)

您需要在显示消息框之前停止计时器。否则他们可能会堆积起来。

可以将System.Timers.Timer配置为一次性计时器,但其他计时器的一般方法是:

当计时器事件触发时,停止计时器,做你的事情,然后在需要时再次启动计时器。

答案 1 :(得分:0)

在第MessageBox.Show("Hello");行 执行将停在那里等待用户按“确定”按钮,因此行timer1.Stop(); 在用户与消息框交互之前不会到达,并且计时器将继续以这种方式工作。