将表单嵌入到窗体中的tabcontrol上

我在Windows窗体中有一个选项卡控件,我希望能够单击选项卡,在选项卡的正文区域中,我希望它显示另一个窗体作为嵌入式组件。 这可能吗? 如果是这样,有人可以提供一个示例或链接到如何完成此操作的示例?

您可能正在寻找Tabbed MDI Child Forms

您可以嵌入表格,但这不是最佳选择。

最好将内容放在UserControls上并将其添加到TabPage。

将MainForm(Parent)设置为IsMDIContainer = true;

创建ChildForm的实例并调用此函数:

FormChild frmChild = new FormChild(); AddNewTab(frmChild); 

将此函数复制到您的代码:

 private void AddNewTab(Form frm) { TabPage tab = new TabPage(frm.Text); frm.TopLevel = false; frm.Parent = tab; frm.Visible = true; tabControl.TabPages.Add(tab); frm.Location = new Point((tab.Width - frm.Width) / 2, (tab.Height - frm.Height) / 2); tabControl.SelectedTab = tab; } 

我认为另一个答案有正确的想法; 选项卡式MDI可能就是您想要的。

有一种方法可以创建一个UserControl,它具有与表单相同的内容并在TabPage上使用它。

 TabPage myTabPage = new TabPage(sometext); myUserControl = new myUserControlType(); myUserControl.Dock = DockStyle.Fill; myTabPage.Controls.Add(myUserControl); myTabControl.Add(myTabPage); 

http://bytes.com/topic/c-sharp/answers/270457-can-i-add-form-tabpage更详细; 但我先看看MDI的东西。

如果您不想使用MDI,可以尝试将所需的所有内容放到用户控件中,并在表单和选项卡中添加此用户控件。