簡體   English   中英

我們如何在WinRT應用程序中設置計時器?

[英]How do we set Timers in WinRT app?

我正在嘗試在我的Windows應用商店應用中設置Timer。

    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      
      }

在按鈕上單擊我調用上面的方法來設置此計時器。 但是當設置了Tickhand的Eventhandler時,我收到錯誤“嘗試讀取或寫入受保護的內存。這通常表明其他內存已損壞。”

我們是否需要在Windows應用商店應用中以不同方式處理定時器?

解決方案是將Timer移出方法,例如

private DispatcherTimer timer = new DispatcherTimer();

並在ctor中設置它

public TheClass()
{
    timer.Tick += timer_Tick; 
    timer.Interval = new TimeSpan(00, 1, 1);
    timer.Start();
}

很難說沒有完整代碼的原因是什么,但它可能是timer_Tick的行為。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM