急~~在子窗体中打开另个子窗体并关闭本窗体`为什么只关闭本窗体而无法打开

问题描述

DimfrmAsNewMDImainDimfrm2AsNewform2frm2.MdiParent=frmfrm2.Show()Me.Hide()我那里错了??

解决方案

解决方案二:
'DimfrmAsNewMDImain去掉!Dimfrm2AsNewform2frm2.MdiParent=me.MdiParentfrm2.Show()Me.Hide()'或直接Close掉
解决方案三:
当你使用NewMDImain的时候,只是把frm2加到了一个未显示出来的刚建立的MdiMain中了,而不是现有的MdiMain实例。因为你的当前窗体Me就是MdiMain的子窗体,所以可以通过Me.MdiParent得到主窗体实例,因此用如下语句问题解决:frm2.MdiParent=me.MdiParent
解决方案四:
你在使用类似Word这种多文档软件的时候如果把最外层的那个最小化按钮按下,整个word(包括里面所有的文档窗体)都会最小化。你的代码先创建了一个MDImain主窗体,它相当于Word的主窗体,然后创建了一个普通窗体,并将它的MDI父窗体设置成刚创建的MDI主窗体。那么这个frm2就成了frm的一个子窗体,当你关闭或者最小化frm,都会导致其所有子窗体同时关闭或最小化,所以frm也不见了。另外你的这段代码是写在哪里?Me.Hide()Me指的是什么?应该在另一个子窗体里写这段代码吧?就像2楼写的。
解决方案五:
2楼的方法只适合于存在MdiParent属性假如我的每一个窗体没有设置MdiParent属性,就会出现两个窗体全部关闭的现象
解决方案六:
2楼的方法只适合于存在MdiParent属性假如我的每一个窗体没有设置MdiParent属性,就会出现两个窗体全部关闭的现象------------------------------------------正常情况下不可能出现这种情况!如果真的是这样的,那么在第一个窗体建立的时候或显示第二个窗体之前要能获取到MdiParent窗体。最好是在第一个窗体实例化后把MdiParent做为属性传到第一个窗体,然后在显示第二个窗体的时候使用这个属性值做为主窗口来显示。

时间: 2025-01-29 22:21:22

急~~在子窗体中打开另个子窗体并关闭本窗体`为什么只关闭本窗体而无法打开的相关文章

checkbox-怎么在主窗体中实现多个子窗体的CheckBox单选?

问题描述 怎么在主窗体中实现多个子窗体的CheckBox单选? 解决方案 可以用图片和checkbox组合下试试 解决方案二: 是winframe 还是webframe?说清楚点 解决方案三: 你是要在一个frame 中打开多个子frame吗?如果是这样的话你可以在夫frame中定义一个变量来判断子frame中是个有CheckBox 选中

数据库 winform-如何将在A窗体中checkBox选中记录的各项数据 分别绑定到另一个B窗体的各个textBox中

问题描述 如何将在A窗体中checkBox选中记录的各项数据 分别绑定到另一个B窗体的各个textBox中 最近在做一个数据库的程序开发作业,希望实现这样的操作: 在A窗体中dataGridView第一列插入了checkBox列,通过选中,继而对选中记录进行"编辑"和"删除"等操作,问题主要在编辑操作.我希望在A窗体对我需要修改的数据进行选中,然后点选"编辑"后,弹出B窗体,界面类似于注册界面,然后选中记录的每个属性对应各自的textBox中,在

怎么在主窗体中实现多个子窗体的CheckBox单选

问题描述 解决方案 解决方案二:可以自己做一个event或者delegate,每一个子窗体声明一个实例,checkbox选中时,调用实例.父窗口订阅这个event或者delegate,哪一个checkbox被选中了,可以由delegate的参数穿过来,父窗口的订阅事件就可以uncheck其它的.解决方案三:用什么子窗体,难道你还需要在窗口中鼠标随意拖动吗用用户控件,或者自定义控件,然后定义个publicbool属性,给checkbox.checked赋值取值然后点击事件,可以参考1楼,自己写个事

在主窗体中打开子窗体的问题

问题描述 如图我是在主窗体中开打一个子窗体,子窗体是是最大化显示的,但在主窗体最上面一行出现了和标题栏一样的东西有最小化和关闭那个按钮,有什么办法可以不显示整个那条标题栏--.谢谢,求救!!! 解决方案 解决方案二:newMDIChild.Dock=DockStyle.Fill;formborderstyle属性设为Nonemaximizebox属性设为Falseminizebox属性设为FalseWindowsState设为maximized解决方案三:不行,还是一样的.解决方案四:继续顶,不

C#中,怎么将一个窗体中已经改变的全局变量同步到另一个窗体中,将其赋值给局部变量

问题描述 C#中,怎么将一个窗体中已经改变的全局变量同步到另一个窗体中,将其赋值给局部变量 在全局变量定义的窗体中我定义了GlobalVariable.dianshu2和GlobalVariable.chishu2变量,然后在A窗体中给这两个全局变量都赋了值,在B窗体的一开始写了 static int dianshu= GlobalVariable.dianshu2; static int chishu= GlobalVariable.chishu2; double[,] m_X_ChiXian

c#学习 网络qq编程-怎样将QQhtml代码背景图嵌入C#窗体中

问题描述 怎样将QQhtml代码背景图嵌入C#窗体中 怎样将QQhtml代码背景图嵌入C#窗体中动态网页代码已经有了,怎样将其嵌入到窗体应用程序中 解决方案 放一个webbrowser控件,在里面加载你的html代码.

Windows窗体控件如何给WPF窗体中的控件传递信息????????

问题描述 请问大家,我这里有两个工程,一个是WPF窗体工程,一个是Windows窗体控件.然后WPF窗体工程中加载了Windows窗体控件.现在我再在WPF窗体中加入两个TextBox控件,我希望鼠标在Windows窗体控件内移动鼠标的时候,Windows窗体控件的Mouse_Move事件触发,并且该事件中能够编写代码把鼠标当前位置的X,Y坐标分别显示在WPF窗体的TextBox控件内.请问,这如何实现呢? 解决方案 解决方案二:自己顶一下.望大家帮忙.解决方案三:PostMessage解决方案

单击树节点在父窗体中打开了几个子窗体,如何做到我选中节点后打开对应的子窗体???

问题描述 单击树节点在父窗体中打开了几个子窗体,如何做到我选中节点后打开对应的子窗体???-节点0---A---B---C选中节点A,弹出FORM1选中节点B,弹出FORM2选中节点C,弹出FORM3我的代码如下,但是只能打开同一下窗体,如何实现点击不同节点后显示相应的窗体呢privatevoidtrwFuncFrame_AfterSelect_1(objectsender,TreeViewEventArgse){System.Stringstr=trwFuncFrame.SelectedNod

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

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