[英]creating a timer for a c# wrapper class
我在Outlook中有一個包裝器類,它有可能一次處理大量事件,但是我只想在用戶觸發一次后提示用戶。 我正在使用“兌換”來存儲我的消息/文件夾ID,但是需要創建一種在捕獲所有ID之后觸發事件的方法。
建議使用Timer類來處理此問題,但是我還沒有編寫一個此類,因此對如何正確完成此任務有些困惑。
提前致謝
這是從MSDN收集的一個簡單示例:
using System;
using System.Timers;
public class TimerExample
{
public static void Main()
{
Timer aTimer = new Timer();
aTimer.Elapsed += OnTimedEvent;
aTimer.Interval = 2000;
aTimer.Enabled = true;
Console.ReadLine(); // artificially pause app to let timer run
GC.KeepAlive(aTimer);
}
private static void OnTimedEvent(object source, ElapsedEventArgs e)
{
Console.WriteLine("Timer event fired");
// pseudocode:
// check for new events collected
// if any exist, take first and present UI to user
// if more exist, then consinue
}
}
這是一個控制台應用程序,可在應用程序的入口點創建並啟動計時器。 如果您正在使用GUI應用程序,則可以在窗體的OnLoad事件中使用相同的代碼。 OnTimedEvent處理程序將保持幾乎相同。 該事件是您進行邏輯測試的地方,以測試收集到的OUtlook事件並決定是否需要通知用戶。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.