2013-01-21 50 views
1

我有一套行爲良好的Windows窗體嵌入在DLL中,我沒有完全控制。這些是我試圖在一個界面下統一的單獨的遺留項目的一部分,以便應用程序不會覺得像彈出地獄。附加一個TabControl到MDI父窗體而不是工具條

我認爲這樣做的方法是創建一個MDI父窗體,並打開其他窗體作爲子窗體。一個孩子需要的時候一個孩子的形式。當他們導航一個MDI文件將關閉,另一個將打開。

雖然父MDI表單需要導航控件。我想使用tabcontrol。是否可以將tabcontrol附加到父MDI表單上?我所能找到的文檔和示例都是工具條,但這對我想完成的任務來說太有限制了。

沒有代碼顯示,對不起。我不確定我想要什麼是可能的。

更新如下所示,我真的不需要MDI來完成我設定的工作。但是,將問題保持原樣。

回答

1

如果我已經正確閱讀這個,那麼我不認爲你正在尋找MDI,因爲你想使用TabControl導航到每個表單。

如果打開TopLevel爲false,並從表刪除邊框,你基本上是把形式爲用戶控件,並且可以將其添加到您選擇的TabPage的面板:

Form f = new Form(); 
    f.TopLevel = false; 
    f.FormBorderStyle = FormBorderStyle.None; 
    f.Dock = DockStyle.Fill; 
    tabPage1.Controls.Add(f); 
    f.Visible = true; 

變化Form到你從你的DLL引用的形式。

+0

你說得對,我認爲我通過拖拽MDI完成了這一切。這可能會起作用,我會在驗證後立即給出答案。謝謝。 –

相關問題