C#关于模式窗体的问题 50

现在有3个FormForm1,Form2,Form3Form1下有如下代码Form1form1=newForm1();Form2form2=newForm2();Form... 现在有3个Form Form1,Form2,Form3
Form1 下有如下代码
Form1 form1 = new Form1();
Form2 form2 = new Form2();
Form3 form3 = new Form3();
form1 = this;
在Form2,Form3 的Load中也有也有Form1.form2 = this;
Form1.form3=this;

现在在Form1 和Form2 各加入一个BUTTON
Form1中Button1事件为
form2.ShowDialog();

在Form2中Button2事件为
Form1.form2.hide();
Form1.form3.ShowDialog();

此时Form3打开,Form2 会隐藏掉,而且Form1会被自动后置到当前你在桌面中打开的所有窗口的最后方.
请问如何不让Form1后置到所有页面的最后方?
你们搞错我的意思了...我是说比如我开了个浏览器,FORM1本来在浏览器上面一层的,可是点了Form2的按钮后FORM2消失,FORM1则会被浏览器挡住,然后FORM3在浏览器上方...夹住
展开
 我来答
帐号已注销
2012-02-03 · TA获得超过787个赞
知道小有建树答主
回答量:549
采纳率:0%
帮助的人:285万
展开全部
如果不想让form1置于最后,您可以考虑在打开form3时暂时设置form1的topmost=true,这样form1就置于最前端了.在关闭form3的时候将form1的topmost还原为false
追问
不行,这个办法解决不了问题,不然你试试了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
styshoo1986
2012-02-03 · TA获得超过893个赞
知道小有建树答主
回答量:832
采纳率:100%
帮助的人:265万
展开全部
Control有个SendToBack 函数,可以将窗体放在后面,你可以试试。 我刚试过,应该是可以的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
bunliney
2012-02-03 · TA获得超过220个赞
知道小有建树答主
回答量:723
采纳率:0%
帮助的人:717万
展开全部
ShowDialog是打开模态窗体,那么被模态显示出来的窗体一定会在将其显示出来的窗体的前面,你可以改用Show
追问
你搞错我的意思了...我是说比如我开了个浏览器,FORM1本来在浏览器上面一层的,可是点了Form2的按钮后FORM2消失,FORM1则会被浏览器挡住,然后FORM3在浏览器上方...夹住
追答
这样你可以试试
TopMost = true;
TopMost = false;

Form1.Focus();
然后再显示Form3
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式