Re: [問題] 新手問MDI Parent~~@@

看板C_Sharp (C#)作者 (eric)時間20年前 (2005/11/04 17:50), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串4/4 (看更多)
※ 引述《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)

11/04 18:54, , 1F
試試看~~大感謝~~~~:D
11/04 18:54, 1F
文章代碼(AID): #13QoxTFD (C_Sharp)
文章代碼(AID): #13QoxTFD (C_Sharp)