Я написал простую программу WinForm на C #, которая отображает время, обновляя каждую секунду, создавая событие. Хотя все начинается нормально, через некоторое время я замечаю, что он обновляется быстрее, чем каждую секунду. По мере того как проходит больше времени, он продолжает увеличивать скорость обновления. Есть мысли?
public static void Update(){
if(!Pause) {
aTimer = new System.Timers.Timer(1000);
aTimer.Elapsed += new ElapsedEventHandler(OnTimedEvent);
aTimer.Enabled = true;
}
}
private static void OnTimedEvent(object source,ElapsedEventArgs e) {
Form1obj.updateLabel1(DateTime.Now.ToString());
}
В моем классе Форма:
public void updateLabel1(string msg) {
if (this.label1.InvokeRequired)
{
SetTextCallback d = new SetTextCallback(updateLabel1);
this.Invoke(d, new object[] { msg });
}
else
this.label1.Text = msg;
}