CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  C#

有没有在form中程序退出时执行的事件

楼主elixir2002(倚林舍)2005-02-28 18:09:42 在 .NET技术 / C# 提问

我在form中用Application.exit()退出程序,好象无法启动  
  Form_Closing和Form_Closed两个事件,  
  请问有没有用Application.exit()退出程序时执行的事件;  
  谢谢各位  
  问题点数:100、回复次数:18Top

1 楼jialiang(≈≈逆水行舟≈≈)回复于 2005-02-28 18:16:05 得分 0

closing正在关闭  
  closed已经关闭Top

2 楼elixir2002(倚林舍)回复于 2005-02-28 18:17:11 得分 0

我知道  
  closing正在关闭  
  closed已经关闭  
  Top

3 楼alexzhang00(三角猫)回复于 2005-02-28 18:19:52 得分 0

在   closing   里  
  -------------  
  e.Cancel   =   true;  
  //   do   something  
  e.Cancel   =   false;Top

4 楼aijing(我也可以的!)回复于 2005-02-28 18:26:00 得分 0

upTop

5 楼Night_Elf(风暴虫)回复于 2005-02-28 18:28:18 得分 0

添加委托:  
    AddHandler   Application.ThreadExit,   AddressOf   MytheadExitEvent  
   
      Sub   MytheadExitEvent(ByVal   sender   As   Object,   ByVal   e   As   System.EventArgs)  
                  MessageBox.Show("关闭")  
      End   Sub  
   
  在Application.exit中不知可不可以Top

6 楼jimh(Jimmy)回复于 2005-02-28 18:42:52 得分 10

Form_Closing和Form_Closed两个事件好像经常有问题,不能执行。  
  使用重写的方式就有没问题了,  
  ptotected   override   void   OnClosing(CannelEventArgs   e)  
  {  
  //处理代码  
  }Top

7 楼pyuan(菜鸟)回复于 2005-02-28 19:19:10 得分 20

写在main主函数里面吧,一般都是用Application.run(new   form1);开始一个窗口,你直接在后面写你要执行的代码,不正好是程序退出前执行的代码吗?Top

8 楼web_gus(树欲静而风不止)回复于 2005-02-28 19:37:28 得分 0

upTop

9 楼xiongchen(二氧化鬼)回复于 2005-02-28 19:53:49 得分 0

我用的方法是重载closing方法哦!Top

10 楼qltouming(缘木渔人-临渊羡鱼,不若退而结网)回复于 2005-02-28 20:06:57 得分 20

查看动态帮助得:  
  当调用   Application.Exit   方法以退出应用程序时,不引发   Form.Closed   和   Form.Closing   事件。如果在必须执行的其中一个事件中有验证代码,则在调用   Exit   方法之前,应分别为每个打开的窗体调用   Form.Close   方法。  
   
  所以如果要在退出时执行时什么代码,写在Form.Close   中,先执行,再exit。Top

11 楼cdo(Everything has a favourable turn)回复于 2005-02-28 20:07:47 得分 10

ptotected   override   void   OnClosing(CannelEventArgs   e)  
  {  
  //处理代码  
  }  
   
  这样应该可行。Top

12 楼xiaobaolove(紫色太阳)回复于 2005-02-28 23:36:21 得分 0

up,学习Top

13 楼yizhixiaozhu(天啦,手都起茧了)回复于 2005-02-28 23:52:46 得分 0

ddTop

14 楼yufenfeila(雨纷飞啦)回复于 2005-03-01 00:37:07 得分 10

用Application.Exit()退出的程序并不会调用protected   override   void   OnClosing(CannelEventArgs   e)Top

15 楼yufenfeila(雨纷飞啦)回复于 2005-03-01 00:41:11 得分 10

[STAThread]  
  static   void   Main()    
  {  
  Application.Run(new   Form1());  
   
  //在这里写代码就可以了  
   
  }Top

16 楼FlashElf(銘龘鶽)回复于 2005-03-01 00:48:45 得分 20

///   <summary>  
  ///   应用程序的主入口点。  
  ///   </summary>  
  [STAThread]  
  static   void   Main()    
  {  
  //在   Application.Run   映射事件  
  Application.ApplicationExit+=new   EventHandler(Application_ApplicationExit);  
   
  Application.Run(new   Form1());  
   
  }  
  private   static   void   Application_ApplicationExit(object   sender,   EventArgs   e)  
  {  
  //Application.Exit();   后就走这里了。  
  System.Diagnostics.Debug   .WriteLine("Application_ApplicationExit");  
  }Top

17 楼marvinhong(边城骆驼)回复于 2005-03-01 08:52:07 得分 0

若webform的關閉事件也是這樣寫法嗎?  
  Top

18 楼elixir2002(倚林舍)回复于 2005-03-01 09:59:23 得分 0

谢谢大家!!给分Top

相关问题

  • 为什么adocommand执行完后,程序无故自动退出?
  • 在Formcreate中执行application.Terminate,为什么程序没有退出?
  • 如何在程序退出后再执行另一外部程序?
  • 退出程序
  • 奇怪的内存泄漏。语句没有执行。程序就退出了。why?????
  • 如何在系统退出前让程序执行特定的操作?
  • 为什么程序能执行到ExitInstance但是还是不能退出来。
  • 编译成debug程序运行正常,但编译成release程序一执行就退出了
  • 可执行程序
  • 程序中有两个form怎么实现form1执行后在执行form2?

关键词

  • 执行
  • 代码
  • application
  • applicationexit
  • 退出
  • canneleventargs
  • 事件
  • 程序
  • 调用
  • onclosing

得分解答快速导航

  • 帖主:elixir2002
  • jimh
  • pyuan
  • qltouming
  • cdo
  • yufenfeila
  • yufenfeila
  • FlashElf

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo