作者Eric30 (eric)
看板C_Sharp
标题Re: [问题] 新手问MDI Parent~~@@
时间Fri Nov 4 17:58:32 2005
※ 引述《danceric (蜥蝪)》之铭言:
: ※ 引述《Eric30 (eric)》之铭言:
: : 首先 您这句
: : "如果我在From生成了一个form名叫f1好了 , f1的MdiParent设为this"
: : 不清楚您的意思 , 我先假设是
: : "开了一个专案 , 在这个专案再加入一个Form , 叫f1 , 让f1是this的MdiChild
: : 然後我想要再开一个Form叫f2 , 让f2是f1的Mdichild "
: : 这种三层的MDI表单架构 在.NET好像是无法实现的
: : 一个Form不可以同时是Container又是Child @@ (有错请指正)
: : 再如果您的意思不是这样 而是
: : "开了一个专案 , 这个专案一开的时候 , 就有一个Form叫f1 , 然後再开一个Form
: : 叫f2 , 让f2是f1的Child "
: : 这是OK的
: : 但是我不懂的是 为什麽要将 "f1的MdiParent设为this" ?
: : 我的做法如下 :
: : //将this设为Mdi父表单
: : this.IsMdiContainer = true;
: : //生成 Form 物件 f2
: : Form f2 = new Form();
: : f2.Show();
: : //让f2被"装"在this里面
: : f2.MdiParent = this;
: 感谢您的回答~~可能我讲得不是很清楚吧~~
: 首先我开了一个专案里面一开始就有Form1..
: 我先新增了两个form叫f1跟f2..
: 在Form1中我设定Form1为MdiContainer
: 然後写了以下几行程式
: f1 _f1 = new f1();
: _f1.MdiParent = this;
: ^^^^指Form1
: _f1.Show();
: 所以会show出_f1嘛~~
: 我继续再_f1上加了一个button好了~
: 然後button的click事件写了以下几行程式
: f2 _f2 = new f2();
: _f2.MdiParent = Form1;
: _f2.Show();
: 就会出现我之前说的那个错误~
: 我主要想问的是~~~~
: _f2.MdiParent = Form1;
: 这一行应该改为什麽才对咧?!
: 请各位大大不吝赐教..谢谢~~:D
@@
所以你是希望 按下f1的button之後
会出现f2 而且f2是最初的Form1的MDI Child @@
那应该要改成
_f2.MdiParent = _f1.MdiParent @@
因为你在f1里面写"Form1"是想要找那个 "FORM"
可是在f1是看不到Form1这个"FORM"的
f1只知道在同一个namespace下有Form1这个Class
所以会产生这个错误 :)
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.113.138.60
※ 编辑: Eric30 来自: 140.113.138.60 (11/04 17:58)
1F:推 danceric:试试看~~大感谢~~~~:D 11/04 18:54