由于使用timer涉及到线程间操作的问题,所以要使用timer来关闭窗体,则需要使用到委托 timer的声明: System.Timers.Timer timer2 = new System.Timers.Timer(500); timer2.AutoReset = false; timer2.Enabled = true; timer2.Elapsed += new System.Timers.ElapsedEventHandler(timer2_Elapsed); timer2.Start(); 委托的声明: private delegate void CloseFormDelegate(string value); private void CloseForm(string value) { if (this.InvokeRequired) { CloseFormDelegate d = new CloseFormDelegate(CloseForm); this.Invoke(d,new object[] { value}); } else { this.Close(); } } 在timer触发的事件中使用CloseForm()函数即可关闭当前窗口