这里要粘贴的代码有点多,所以我会先添加适当的链接,我也会为那些使用 HTML/JS 的人提供。
对于使用 HTML/JS 的用户,请参阅:
在 Windows 8 应用程序中使用 setTimeout 的计时器
使用 cs/xaml 虽然您仍然可以为此使用 js,具体取决于您希望如何完成此操作:
How to submit a work item using a timer
对于重复计时器,请参阅:
如何创建定期工作项
现在,在您的情况下,即使应用程序未运行,您是否也需要发生这种情况?如果是这样,那么您将需要一个最多每 15 分钟左右运行一次
的后台任务创建并注册一个后台任务
因此,基本方案如下(来自 msdn 页面),但如果您想要取消它的方法,该网站也提供了该方案。请注意,当您的应用程序暂停或终止时,这将停止运行,即您的应用程序已关闭或不再是活动应用程序约五秒钟。
var period = TimeSpan.FromMinutes(5);
var timer = ThreadPoolTimer.CreatePeriodicTimer((source) =>
{
//do your query/work here
Dispatcher.RunAsync(CoreDispatcherPriority.High,
() =>
{
// Now that work is done, safely access UI components here to update them
});
}, period);