3

我试图在我的 Windows 商店应用程序中的给定时间引发一个事件。现在我已经无数次在桌面应用程序中这样做了,并且我过去使用System.Threading.Timer过并且效果很好,但是该类不适用于 Windows 商店应用程序。

我查看了文档并找到了一个名为的类DispatchTimer,虽然它似乎是我所追求的,但如果我错了,请纠正我,但缺少文档。但幸运的是,它很容易使用。

所以我尝试了DispatchTimer,但是在使用它之后,我什至不确定这是我应该使用的。

我如何观看任何给定时间并在该时间结束时引发事件(在 Windows 商店应用程序中)?您知道在 Metro 应用程序中执行此操作的任何资源吗?

4

2 回答 2

3

像这样使用DispatcherTimer

var timer = new DispatcherTimer { Interval = TimeSpan.FromSeconds(10) };
timer.Tick += OnTimerTick;
timer.Start();

private void OnTimerTick(object sender, object args)
{
    // Do something with pickup here...
}

这将创建一个间隔为 10 秒的计时器。

于 2013-01-22T11:29:57.543 回答
2

DispatcherTimer是要走的路。请注意,如果您希望您的应用程序在后台运行,您必须在应用程序清单中声明或使用后台代理。

于 2013-01-22T11:25:07.220 回答