我们可以在C#windows应用程序的选项卡控件中放置windows窗体吗?

我们可以在C#windows应用程序的选项卡控件中放置windows窗体吗?,c#,winforms,desktop-application,tabcontrol,windows-applications,C#,Winforms,Desktop Application,Tabcontrol,Windows Applications,在C#windows应用程序中,我们可以将多个windows窗体放在选项卡控件中的单个窗体中吗 例如,这是实现它的正确方法还是我们应该使用用户控制 Form2 frm = new Form2(); frm.TopLevel = false; frm.Visible = true; frm.FormBorderStyle = FormBorderStyle.None; frm.Dock = DockStyle.Fill; tabControl1.TabPages[0].Co

在C#windows应用程序中,我们可以将多个windows窗体放在选项卡控件中的单个窗体中吗

例如,这是实现它的正确方法还是我们应该使用用户控制

  Form2 frm = new Form2();
  frm.TopLevel = false;
  frm.Visible = true;
  frm.FormBorderStyle = FormBorderStyle.None;
  frm.Dock = DockStyle.Fill;
  tabControl1.TabPages[0].Controls.Add(frm);

您不能也不需要使用Windows窗体,但您可以使用:

  • 包含当前选项卡的所有控件的
  • 控制
  • 控制
  • 控件来根据某些属性分配子控件的位置,这样您的UI在不同的屏幕大小和分辨率下看起来都一样好
有了这些,您可以在VS设计中创建UI,因此很容易管理更改。
如果控件的数量和可能的选项,那么标签,是非常大的,你也可以考虑一个选项来动态加载它们。但在这种情况下,项目的正确连接和维护变得更加困难

您不能也不需要使用Windows窗体,但您可以使用:

  • 包含当前选项卡的所有控件的
  • 控制
  • 控制
  • 控件来根据某些属性分配子控件的位置,这样您的UI在不同的屏幕大小和分辨率下看起来都一样好
有了这些,您可以在VS设计中创建UI,因此很容易管理更改。
如果控件的数量和可能的选项,那么标签,是非常大的,你也可以考虑一个选项来动态加载它们。但在这种情况下,项目的正确连接和维护变得更加困难

听起来,将单独选项卡中的功能移动到用户控件中,您可能会受益匪浅


用户控件是将功能从主窗体中分离出来的一种很好的方法。

将单独选项卡中的功能移动到用户控件中似乎会对您有所帮助


用户控件是将功能从主窗体中分离出来的一种很好的方法。

没有什么真正迫使您将15个制表符代码放入一个c#文件中。可以使用分部类原则将单个类拆分为多个源文件。您还可以将代码拆分为多个类—Visual Studio只是您的工具,而不是您的主管。您不需要像VS指令那样行事,它只涵盖最常见的情况,您可以在像您这样的特殊情况下进行更好的类设计


是的,你可以把任何东西放到选项卡上,我指的是任何其他类的任何控件对象。您还可以在那里放置一个表单对象——在已经创建表单对象的情况下,因为底层的Windows API允许这样做。

没有什么真正迫使您将15个选项卡代码放入一个c#文件中。可以使用分部类原则将单个类拆分为多个源文件。您还可以将代码拆分为多个类—Visual Studio只是您的工具,而不是您的主管。您不需要像VS指令那样行事,它只涵盖最常见的情况,您可以在像您这样的特殊情况下进行更好的类设计


是的,你可以把任何东西放到选项卡上,我指的是任何其他类的任何控件对象。您还可以在那里放置一个表单对象-在已经创建表单对象的情况下,因为底层Windows API允许这样做。

您应该仔细研究。将表单设计为
用户控件
单独,然后将它们插入到各个选项卡中,这无疑是组织代码的更好方法。我遇到了类似的问题,我使用了“分部类”拆分不同的c代码片段。你应该仔细研究。将表单分别设计为
用户控件
,然后将它们插入到各个选项卡中,这无疑是更好的代码组织方式。我遇到了类似的问题,我使用“分部类”拆分了不同的c代码片段。