每当我尝试做这样的事情计时器犯规站:c#timer是否可以自己调用.stop函数?
private void timer1_Tick(object sender, EventArgs e)
{
if ((addedToFriendsCounter == 4) || (followJobFinished))
{
//stop the timer
}
}
有什么建议?
每当我尝试做这样的事情计时器犯规站:c#timer是否可以自己调用.stop函数?
private void timer1_Tick(object sender, EventArgs e)
{
if ((addedToFriendsCounter == 4) || (followJobFinished))
{
//stop the timer
}
}
有什么建议?
是的,没问题。评论无法停止计时器。使用
timer1.Stop();
或
((Timer)sender).Stop();
有没有问题从Tick
事件处理程序中停止定时器。到底是什么addedToFriendsCount
和followJobFinished
?您的错误是其中一个或//stop the timer
的代码。
是的,从Tick
事件停止定时器没有问题。该事件在主线程中运行,因此访问Timer
控件时不会出现跨线程问题。
您可以通过调用Stop
方法或将Enabled
属性设置为false来停止计时器。
+1对于'评论无法停止计时器':-)当我读到它时,我将我的啤酒洒在了屏幕上,很有趣。 – 2011-03-26 22:28:20
lol,naa我知道timer1.stop()只是忘了添加它:> – brux 2011-03-26 22:31:11
还要注意,如果间隔很小,那么最好在tick函数的开始处停止计时器,然后在最后开始计时在finally块中)。否则两个滴答可能会重叠,如果有一个缓慢的数据库调用或类似的东西。 – ingo 2011-03-26 22:31:23