我这里有点问题。现在我在应用程序启动时使用它启动一个计时器:
if (Initialized == 0)
{
errorCheckTimer.Elapsed += (sender, e) => OnErrorCheckTimerElapsed(sender, e);
Initialized = 1;
}
确保它只启动一次。如果我多次执行此行,计时器将多次触发一次。
现在,在初始化计时器之后,我偶尔使用:
运行它errorCheckTimer.Interval = ErrorTimerInterval;
errorCheckTimer.Enabled = true;
errorCheckTimer.Start();
在某些行为发生后,我将其停止:
tradeErrorTimer.Enabled = false;
tradeErrorTimer.Stop();
但是有一些模糊不清的故障发生了。计时器在首次初始化时始终有效,但有时根本不会打开,并且OnErrorCheckTimerElapsed将不会被执行。
因此,为了使其更具可重新性,我是否可以删除已添加到OnErrorCheckTimerElapsed.Elapsed中的计时器,以便在每次需要启动时初始化一个新计时器?
如果我尝试多次初始化它们,我会立即多次触发OnErrorCheckTimerElapsed。
谢谢。
答案 0 :(得分:0)
如果您不想再运行一次计时器,则应将AutoReset属性设置为false。 errorCheckTimer.AutoReset = false;