假设我们在.Net应用程序中使用System.Windows.Forms.Timer,在计时器上使用Start()和Stop()方法与使用Enabled属性之间是否有任何有意义的区别?
例如,如果我们希望在进行某些处理时暂停计时器,我们可以这样做:
myTimer.Stop();
// Do something interesting here.
myTimer.Start();
Run Code Online (Sandbox Code Playgroud)
或者,我们可以这样做:
myTimer.Enabled = false;
// Do something interesting here.
myTimer.Enabled = true;
Run Code Online (Sandbox Code Playgroud)
如果没有显着差异,社区是否就选择哪个选项达成共识?
BFr*_*ree 15
来自Microsoft的文档:
调用Start方法与将Enabled设置为true相同.同样,调用Stop方法与将Enabled设置为false相同.
http://msdn.microsoft.com/en-us/library/system.windows.forms.timer.enabled.aspx
所以,我猜没有区别......
不,他们每个人都是等同的.
请参见Timer.Enabled和Timer.Start/Timer.Stop
为了在你的问题中添加关于共识的内容,我想说它可能是更好的做法,使用Start/Stop方法,并且我认为它对可读性也更好.
詹姆士.
就个人而言,我不喜欢设置属性除了更改值之外还有太多后果,所以我倾向于坚持Start()
/ Stop()
因为它很清楚(呃)对我来说,当你调用一个方法时,你要求的东西是发生.
也就是说,我不认为关于什么设置会有很多模糊不清Enabled = true
:)