如何在WPF中创建计时器?

use*_*r27 69 c# wpf

我是wpf中的计时器的新手,我需要一个代码,每5分钟就会弹出一个消息框..can任何人都可以帮我找到简单的计时器代码.

那是我到目前为止所尝试的:

System.Windows.Threading.DispatcherTimer dispatcherTimer = new System.Windows.Threading.DispatcherTimer(); 
private void test() 
{ 
    dispatcherTimer.Tick += new EventHandler(dispatcherTimer_Tick); 
    dispatcherTimer.Interval = new TimeSpan(0, 0, 1); 
    dispatcherTimer.Start(); 
} 
private void dispatcherTimer_Tick(object sender, EventArgs e)
{ 
    // code goes here 
} 

private void button1_Click(object sender, RoutedEventArgs e)
{ 
    test(); 
} 
Run Code Online (Sandbox Code Playgroud)

Rhy*_*wey 150

在WPF中,您使用a DispatcherTimer.

System.Windows.Threading.DispatcherTimer dispatcherTimer = new System.Windows.Threading.DispatcherTimer();
dispatcherTimer.Tick += new EventHandler(dispatcherTimer_Tick);
dispatcherTimer.Interval = new TimeSpan(0,5,0);
dispatcherTimer.Start();


private void dispatcherTimer_Tick(object sender, EventArgs e)
{
  // code goes here
}
Run Code Online (Sandbox Code Playgroud)

更多信息在这里

  • 如果它说"// code goes here",写"Messagebox.Show("message goes here");" (4认同)

Jas*_*son 18

添加到上面.如果希望将tick事件编组回UI线程,则可以使用Dispatch计时器.否则我会使用System.Timers.Timer.

  • +1 用于解释与 UI 线程的相关性——在使用 WPF 时理解这一点至关重要。 (6认同)