0
我有一個變量類。它的保留信息會經常更新以供用戶查看。所以我想用Timer來每隔一秒左右更新一次GUI。這裏是代碼:用定時器調用類函數,
public Variable()
{
TimerInit();
_value.timestamp = 0;
_value.value = 0;
}
private void TimerInit()
{
_UpdateTimer.Elapsed += new ElapsedEventHandler(OnTimedEvent);
// Set the Interval to 5 seconds.
_UpdateTimer.Interval = 5000;
_UpdateTimer.Enabled = true;
_UpdateTimer.Stop();
}
private static void OnTimedEvent(object source, ElapsedEventArgs e)
{
this.VariableChange.Invoke(this, new VariableChangeEventArgs() { value = Value }); // invoking the gui
}
你可以發現問題:這是一個靜態函數。我應該怎麼去找我的東西?給定的源對象沒有幫助,因爲它沒有保存數據。我不能讓變量類是靜態的。
我找到的每個例子和幫助都是關於調用控制檯。這不可能很難,但即使MSDN的文檔也無濟於事。
希望你能解除我的困惑。
托馬斯
爲什麼'OnTimedEvent'需要是靜態的? – 2011-02-24 22:40:52
只需從事件hendler聲明中刪除靜態關鍵字! – 2011-02-24 22:52:19
是_UpdateTimer靜態字段嗎? – dzendras 2011-02-24 23:05:19