你如何在C#中使用Timers在做某事之前等待一段时间?

Bob*_*Bob -1 .net c# timer

我被告知,与使用Thread.Sleep(int)程序在继续之前等待一段时间相反,我应该使用计时器.

我想知道应该怎么做?有人可以给我一个简短的例子吗?

Oli*_*bes 5

创建一个计时器

Timer _timer = new Timer();
Run Code Online (Sandbox Code Playgroud)

使用初始化计时器

_timer.Interval = 5000; // Time in milliseconds.
_timer.Tick += Timer_Tick;
_timer.Start();
Run Code Online (Sandbox Code Playgroud)

计时器滴答事件处理程序

void Timer_Tick(object sender, EventArgs e)
{
    // Do the timed work here
}
Run Code Online (Sandbox Code Playgroud)

您可以使用停止计时器

_timer.Stop();
Run Code Online (Sandbox Code Playgroud)

UPDATE

您可以将System.Windows.Forms.Timer-component 添加到a Form(准确地说是其组件托盘).这样做的好处是可以从属性窗口设置其属性和Tick事件.

还要检查其他计时器的文档:System.Threading.Timer,System.Timers.Timer,System.Web.UI.TimerSystem.Windows.Threading.DispatcherTimer.Abhishek Sur 在这里写了一个很好的比较