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

遇到一个棘手问题,求助,在线等

楼主C_Cyou()2005-03-02 15:43:29 在 .NET技术 / C# 提问

winform   中   MDI父窗口中打开一个MDI子窗口,现要求实现功能如下:  
  如果直接点击子窗口中的关闭按钮则MDI子窗口自动最小化,不能关闭。  
  如果点MDI父窗口中的关闭按钮则能同时关闭父子窗口。  
  搞了半天了也没办法。  
  问题点数:20、回复次数:10Top

1 楼C_Cyou()回复于 2005-03-02 16:05:20 得分 0

自己定一下。Top

2 楼yellowhwb(天の羽)回复于 2005-03-02 16:11:41 得分 15

你可以重载Form的OnClosing事件:  
  protected   override   void   OnClosing   (System.ComponentModel.CancelEventArgs   e)  
  {  
  this.WindowState=FormWindowState.Minimized;  
  e.Cancel=true;  
  }Top

3 楼C_Cyou()回复于 2005-03-02 16:12:36 得分 0

不行的。这样MDI父窗口也无法关闭。Top

4 楼yellowhwb(天の羽)回复于 2005-03-02 16:14:31 得分 0

这我到没试过,再想想看!Top

5 楼beibei168(beibei)回复于 2005-03-02 16:16:43 得分 0

把所有的子窗口搜寻一次,如果有就关闭,Top

6 楼C_Cyou()回复于 2005-03-02 16:20:54 得分 0

把所有的子窗口搜寻一次,如果有就关闭,  
   
   
  如何使点击子窗口的关闭按钮产生的效果使窗口最小化?Top

7 楼yellowhwb(天の羽)回复于 2005-03-02 16:25:57 得分 0

你在MDIParent和MDIChild的Form里都加上下面的重载函数:  
   
  protected   override   void   OnClosing(System.ComponentModel.CancelEventArgs   e)  
  {  
          if(this.IsMdiChild)  
          {  
                  this.WindowState=FormWindowState.Minimized;  
                  e.Cancel=true;  
          }  
          else  
          {  
                  e.Cancel=false;  
          }  
          base.OnClosing(e);  
  }Top

8 楼yellowhwb(天の羽)回复于 2005-03-02 16:27:17 得分 0

我测了一下,应该可以的!Top

9 楼MyLf(不睡觉的鱼)回复于 2005-03-02 16:34:48 得分 5

在MDI子窗体的Closing事件中:  
  private   void   Form1_Closing(object   sender,   System.ComponentModel.CancelEventArgs   e)  
  {  
                    e.Cancel   =   true;  
  this.WindowState   =   FormWindowState.Minimized;  
  }  
  在主窗体的Closing事件中:  
  private   void   Form2_Closing(object   sender,   System.ComponentModel.CancelEventArgs   e)  
  {  
  Application.Exit();  
  }Top

10 楼C_Cyou()回复于 2005-03-02 16:41:41 得分 0

可以了,谢谢Top

相关问题

  • 小弟遇到个棘手的问题,原高分相送(在线等)
  • (fzymr) 急!急!急!棘手! 在线等待!
  • 100分在线求棘手问题!
  • 我在生成图表的时候遇到了个非常棘手的问题
  • 遇到一个棘手问题
  • !!!在一个大系统中遇到的非常棘手的问题(涉及到快照和回滚段)
  • 我遇到了一个非常棘手的问题!帮我解决一下!先在这里谢谢大家了!
  • 在用堆栈写行编辑程序时遇到的棘手问题,大家来帮帮忙啊!!!!
  • 一个非常棘手的问题(在线等待)
  • 棘手问题,高手请进,在线等候!

关键词

  • canceleventargs
  • onclosing
  • mdi
  • formwindowstate
  • 关闭
  • windowstate
  • componentmodel
  • 按钮
  • cancel
  • minimized

得分解答快速导航

  • 帖主:C_Cyou
  • yellowhwb
  • MyLf

相关链接

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

广告也精彩

反馈

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