欢迎来到.net学习网

欢迎联系站长一起更新本网站!QQ:879621940

您当前所在位置:首页 » ASP.Net » 正文

热门阅读

Form窗体点击关闭按钮并未关闭进程的解决方法

创建时间:2011年08月04日 12:58  阅读次数:(5645)
分享到:
该问题也是因为本人Form项目开发经验不够引起的。

在开发一个小工具的过程中,因为是有多个Form窗体,多个窗体间的跳转都是如下代码:
private void button1_Click(object sender, EventArgs e)
{
  this.Hide();
  UrlList form = new UrlList(this.cbuserid.SelectedItem.ToString());
  form.Show();
}


这样子,我在UrlList窗体上面点击关闭按钮,想再要调试就会报无法将文件“obj\Debug\AutoPage.exe”复制到“bin\Debug\AutoPage.exe”。文件“bin\Debug\AutoPage.exe”正由另一进程使用,因此该进程无法访问该文件。一定要在任务管理器中关掉该进程后再调试,很是麻烦。自己猜想是因上面的this.Hide()只是隐藏了当前窗口,并没有关闭,所以我在关闭另一个窗口的时候,这个窗口其实还是未关闭的。

解决方法:在窗体的FormClosed事件中关掉所有应用窗口,代码如下:
protected virtual void Main_FormClosed(object sender, FormClosedEventArgs e)
{
  Application.Exit();
}


引申:在开发项目时,不管是Web项目还是Form项目,最好所有的窗体都继承基类,这样很多共公的功能就可以在基类中实现了。比如上面的的代码,如果有基类,就不用处理每个窗体的FormClosed事件了,只需处理基类的即可!    } 
{?
来源:.net学习网
说明:所有来源为 .net学习网的文章均为原创,如有转载,请在转载处标注本页地址,谢谢!
【编辑:Wyf

打赏

取消

感谢您的支持,我会做的更好!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

最新评论

共有评论0条
  • 暂无任何评论,请留下您对本文章的看法,共同参入讨论!
发表评论:
留言人:
内  容:
请输入问题 43+13=? 的结果(结果是:56)
结  果: