我有一个变量类。其保存信息确实经常更新以供用户查看。所以我想使用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的文档也无济于事。
希望你能让我失望。
托马斯
答案 0 :(得分:0)
只需从事件处理程序声明中删除static关键字!