我们如何在 WinRT 应用程序中设置计时器?
我正在尝试在我的 Windows 应用商店应用程序中设置计时器。
public void Start_timer()
{
Windows.UI.Xaml.DispatcherTimer timer = new DispatcherTimer();
timer.Tick += new Windows.UI.Xaml.EventHandler(timer_Tick);
timer.Interval = new TimeSpan(00, 1, 1);
bool enabled = timer.IsEnabled; // Enable the timer
timer.Start(); // Start the timer
}
单击按钮时,我调用上面的方法来设置此计时器。但是当设置 Tick 的事件处理程序时,我收到错误 “尝试读取或写入受保护的内存。这通常表明其他内存已损坏。”
我们是否需要在 Windows 应用商店应用程序中以不同的方式处理计时器?
I am trying to set Timer in my Windows Store App.
public void Start_timer()
{
Windows.UI.Xaml.DispatcherTimer timer = new DispatcherTimer();
timer.Tick += new Windows.UI.Xaml.EventHandler(timer_Tick);
timer.Interval = new TimeSpan(00, 1, 1);
bool enabled = timer.IsEnabled; // Enable the timer
timer.Start(); // Start the timer
}
On button click I call above method to set this Timer. But when Eventhandler for Tick is set, I get error
"Attempted to read or write protected memory. This is often an indication that other memory is corrupt."
Do we need to handle Timers differently in Windows Store apps?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
解决方案是将 Timer 从方法中移出,例如
并将其设置在 ctor 中,
如果没有完整的代码,很难说出原因是什么,但这可能是timer_Tick 的行为。
The solution is to move the Timer out of the method e.g
and set it up in the ctor
Hard to tell what is the reason without the full code, but it could be the behavior of the timer_Tick.