c#如何將子窗體顯示到父窗體的容器(panel)控件中


如何將一個窗體顯示到一個容器控件中,剛開始想的比較簡單,用窗體容器控件添加一般控件的方法,試了一試,代碼如下:

            Form2 frm = new Form2();

            this.panel1.Controls.Add(frm);
            frm.Show();

但是提示了一個錯誤:無法將頂級控件添加到控件。

原來窗體是一個頂級控件,是無法將一個頂級控件添加到一個容器中來的。最后在網上找了相關資料,只需要將代碼改下即可,還是原來的思路,代碼如下:

            Form2 frm = new Form2();
            frm.TopLevel = false;
            frm.Dock = DockStyle.Fill;
            //或者是 this.panel1.Controls.Add(frm);
            frm.Parent = this.panel1;
            frm.Show();

這就實現了容器控件中添加窗體,效果如下:

  

 

其實還有一種方式,就是利用子窗體和父窗體(IsMdiContainer)屬性也能成,這個要自己去控制好坐標。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM