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

MBU*_*MBU 8 c# forms tabcontrol windows-forms-designer

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

SwD*_*n81 10

您可能正在寻找Tabbed MDI Child Forms


Hen*_*man 7

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

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


小智 5

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

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

FormChild frmChild = new FormChild();
AddNewTab(frmChild);
Run Code Online (Sandbox Code Playgroud)

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

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;

}
Run Code Online (Sandbox Code Playgroud)