从另一个页面停止计时器

本文关键字:计时器 另一个 | 更新日期: 2023-09-27 18:19:06

这是WP8项目。我有一个计时器,每3秒循环一次。

private void temperatureTimer()
{     
     System.Windows.Threading.DispatcherTimer dt = new System.Windows.Threading.DispatcherTimer();      
     dt.Interval = new TimeSpan(0, 0, 0, 0, 3000); // 3s
     dt.Tick += new EventHandler(dt_Tick);
     dt.Start();              
}
void dt_Tick(object sender, EventArgs e)
{
    var obj = App.Current as App;
    if (obj.off == true) //global variable 
        dt.Stop();
    Temperature z = new Temperature(); //runs some code...
}

我想在用户点击另一个页面的按钮时停止。

我已经尝试使用全局变量来阻止它,并将其设置为true,当用户从另一个页面单击按钮时,但计时器仍然在。

从另一个页面停止计时器

要么将DispatcherTimer声明为静态类成员,要么使用静态Stop()方法来停止它

全局变量有效。我不得不重新构建我的项目,因为某些原因它不能像它应该的那样工作。