WinForm在时间到期后自动关闭?

6
在Framework 4.0中,我有一个WinForm从另一个窗体打开,显示一些内容和进度条,然后停在那里。如果用户没有手动关闭它,我想在n秒后关闭这个“弹出”窗体。最聪明的方法是什么?
谢谢。
1个回答

11

使用所需的时间间隔启动定时器,然后在第一次触发时关闭表单。 类似于这样:

private Timer _timer;

public PopupForm()
{
   InitializeComponent();
   _timer = new Timer();
   _timer.Interval = 5000; // interval in milliseconds here.
   _timer.Tick += (s, e) => this.Close();
   _timer.Start();
}

实际上,最聪明的做法可能是将此放入自己的StartCountdown()方法中,该方法带有时间作为参数。严格来说,像这样的逻辑不应该出现在构造函数中...


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接