2013-01-22 19 views
3

我正試圖在我的Windows應用商店中的某個特定時間舉辦活動。現在我已經無數次地在桌面應用程序中完成了這項工作,並且過去我使用System.Threading.Timer,並且它運行良好,但該類不適用於Windows應用商店。如何在任何特定時間提高活動

我查看了文檔,發現了一個名爲DispatchTimer的類,雖然它看起來像是我之後的,但如果我錯了,但是文檔不足,請糾正我。但幸運的是它很容易使用。

所以我嘗試了DispatchTimer,但使用後,我甚至不知道這是我應該使用的。

我該如何監視任何給定時間,並在該時間結束時提醒事件(在Windows應用商店應用程序中)?你知道任何資源在地鐵應用程序中做到這一點嗎?

回答

2

DispatcherTimer是要走的路。請注意,如果您希望您的應用在後臺運行,您必須在應用清單上聲明該應用或使用後臺代理。

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秒的間隔定時器。

+1

Thanks @Kristian,我如何將一個對象作爲參數傳遞給OnTimerTick事件?那可能嗎?我知道我們可以爲擴展方法做... – Arrow

+2

你想傳遞什麼樣的論點?你可以在任何情況下使用['DispatchTimer.Tag'](http://msdn.microsoft.com/en-us/library/system.windows.threading.dispatchertimer.tag.aspx)屬性。 – khellang

+1

我需要傳遞Pickup類型的對象,這樣當時間流逝時,我知道哪個Pickup鬧鐘是爲了。皮卡是一個包含訂單信息的類。 – Arrow

相關問題