C#中如何关闭新打开的窗口

问题描述

怎么样在打开一个新窗口的同时关闭一个窗口?在第一个窗口中,名为fristForm,这个窗口有一个按钮,button1.第二个窗口为secondForm.请问要怎么样加代码,当我点击button1的时候,第二个窗口打开。再次点击button1的时候,第二个窗口关闭?

解决方案

解决方案二:
publicclassfirstForm:System.Windows.Form{privatesecondFormfrm2;privatevoidfirstForm_Button1_Click(objectsender,EventArgse){if(frm2==null){frm2=newsecondForm();frm2.ShowDialog(this);}else{frm2.Close();frm2=null;}}}
解决方案三:
1.用showdialog打开f2,隐藏f12.用show打开f2,构造f2构造函数参数类型Form1在f2在构造时关闭
解决方案四:
不好意思,我是初学者,请问这句定义的是什么?是子类么?privatesecondFormfrm2;
解决方案五:
privatesecondFormfrm2,这句的意思是:声明一个secondForm的引用,这样在后面的两个大括号中都能引用到.个人看法,如有不对之处请指教!
解决方案六:
你自己说的,你有一个secondForm的类嘛,我就用你的secondForm咯
解决方案七:
这是我写的代码应该符合你的要求。usingSystem;usingSystem.Windows.Forms;namespaceWindowsApplication3{publicpartialclassForm1:Form{privateboolisShowFrm2=false;privateForm2f2;publicForm1(){InitializeComponent();}privatevoidbutton1_Click(objectsender,EventArgse){if(!isShowFrm2){f2=newForm2();f2.Show();isShowFrm2=true;}else{f2.Close();isShowFrm2=false;}}}}

解决方案八:
privateForm2f2=null;privatevoidbutton1_Click(objectsender,EventArgse){if(f2==null){f2=newForm2();f2.Show();}else{f2.Close();f2=null;}}

时间: 2024-09-18 09:22:28

C#中如何关闭新打开的窗口的相关文章

界面-如何使打开的其他程序或者文档在MFC窗口中显示,而不是新打开一个窗口

问题描述 如何使打开的其他程序或者文档在MFC窗口中显示,而不是新打开一个窗口 我想在程序界面中指定一个区域,用于显示被打开的其他程序或者文档的界面.可是我用ShellExecute函数打开指定的那个文档和程序的时候,总是会再启动另一个窗口,效果就像是直接点击打开那个文件一样. 解决方案 将mfc窗口设置为其它程序的父窗口 解决方案二: 参考:程序只允许打开唯一实例且所有关联文档都在同一实例内打开的一揽子解决办法http://blog.csdn.net/IfI/article/details/1

outlook 2013 中如何在新打开窗体添加插件?

问题描述 RT,我使用了netofficeoutlook的插件..在主窗体的上面就可以加载插件,但是在编写新邮件/弹出回复时插件一直活动在主窗体上.无法加载到新打开的页面.我在Outlook.Inspectors对象中注册了NewInspectorEventHandler事件.我想让每个打开的mail窗体都有插件.这个请问怎么做?在邮件编辑下方我想出现我自己的插件,而不是在上面RibbonUI中.请给我一些资料和关键字吧.谢谢..另外,标记的这个是否有公开的接口?可以自行添加tab?我尝试在主窗

DataGrid模板中连接后新开一个窗口的问题

问题描述 以下是DataGrid的模板列,<ItemTemplate><asp:HyperLinkText="查看详细"NavigateUrl='<%#"javascript:newwin("NewsDetail.aspx?id="+DataBinder.Eval(Container.DataItem,"id").ToString()+"");"%>'runat="s

MDI 窗口在打开一个子窗口同时关闭已经打开的子窗口时,子窗口上 datagridview 中的列标题刷新的问题

问题描述 在MDI窗口中打开一个带有datagridview控件的子窗口,同时关闭另一个已经打开的带有datagridview控件的子窗口时出现datagridview中的列标题中含有已关闭子窗口中datagridview的列标题,如下图.使用的VS版本为VS2010旗舰中文版,datagridview在窗口load事件中绑定数据源.打开一个子窗口,同时关闭已打开子窗口的代码如下privateconsumerf_consumer;privatevoidConsumerToolStripMenuI

asp.net在事件中启动线程来打开一个页面的实现方法_实用技巧

在页面点击一个按钮,其目的是在按钮中做两件事情,一件需要点击按钮马上完成,另一件事情是点击按钮后做其他事情.如果按顺序一次做完感觉特别耗时,下面简单罗列一下. protected void Button1_Click(object sender, EventArgs e) { Label1.Text = TextBox1.Text; //在这做第一件事情 dowork(); //做完后马上启动线程 System.Threading.Thread thread = new System.Threa

open-如何在当前窗口中捕获新打开窗口的关闭事件

问题描述 如何在当前窗口中捕获新打开窗口的关闭事件 如何在当前窗口A中捕获新打开窗口B的关闭事件 只能操作窗口A

MFC应用程序中处理消息的顺序,创建窗口的过程关闭窗口的顺序(非模态窗口),打开模式对话框的函数调用顺序

MFC应用程序中处理消息的顺序 1.AfxWndProc()      该函数负责接收消息,找到消息所属的CWnd对象,然后调用AfxCallWndProc 2.AfxCallWndProc() 该函数负责保存消息(保存的内容主要是消息标识符和消息参数)供应用程序以后使用,                    然后调用WindowProc()函数 3.WindowProc()      该函数负责发送消息到OnWndMsg()函数,如果未被处理,则调用DefWindowProc()函数 4.O

在运行-&amp;amp;gt;cmd中能找到javac,但进一个目录按住shft,在此处打开命令窗口却找不到javac

问题描述 在运行->cmd中能找到javac,但进一个目录按住shft,在此处打开命令窗口却找不到javac 两种情况下都能找到java命令环境变量设置为:系统变量JAVA_HOME: D:javajdk1.7.0_40Path: .......系统的.......;%JAVA_HOME%bin 解决方案 再重新设置一下环境变量试一下.在"系统变量"中,设置3项属性,JAVA_HOMEPATHCLASSPATH(不分大小写)JAVA_HOME指明JDK安装路径,就是安装时的路径D

C# winform登录验证成功关闭窗体打开新窗体

问题描述 登录窗体:w_1,WEBBROSWER登录内容登录成功后关闭w_1打开新窗体w_2怎么实现,w_1WEBBROSWER 解决方案 解决方案二:全局静态变量:staticboolok=false;先打开主窗体,在OnLoad的时候模式打开登录窗体登录窗体中验证成功时,ok=true;登录窗体返回后,检测if(!ok)Close();解决方案三:有个非模式化窗体的设置,showdialog,查询MSDN会告诉你关于这个窗体的代码解决方案四:可以下载这个反编译看一下.http://downl