C# 如何在Windows窗体中动态切换面板

C# 如何在Windows窗体中动态切换面板,c#,winforms,dynamic,panel,C#,Winforms,Dynamic,Panel,我是C#新手,正在Visual Studio中开发C#Windows窗体应用程序,希望用另一个面板B动态替换窗体中现有的面板a 实现这一点的方法之一是将面板相互放置,使其左上角相互重叠。但这种方法使得对放置在下面的面板进行更改变得困难 我已经用Java完成了这类工作,但还没有找到任何Windows窗体的解决方案。正如您指定的,您不想使用面板,然后使用选项卡控件 在运行时或设计时 将外观设置为按钮 设置ItemSize0表示宽度,1表示高度 将多行设置为True 将SizeMode设置为固定 选项

我是C#新手,正在Visual Studio中开发C#Windows窗体应用程序,希望用另一个面板B动态替换窗体中现有的面板a

实现这一点的方法之一是将面板相互放置,使其左上角相互重叠。但这种方法使得对放置在下面的面板进行更改变得困难


我已经用Java完成了这类工作,但还没有找到任何Windows窗体的解决方案。

正如您指定的,您不想使用面板,然后使用
选项卡控件

在运行时或设计时

  • 外观设置为按钮

  • 设置
    ItemSize
    0表示宽度,1表示高度

  • 多行设置为True

  • SizeMode
    设置为固定

  • 选项卡页上的选项卡现在应该不可见,但选项卡页仍然存在

    不过,它还允许您更轻松地使用每个页面上的控件

    根据评论更新

    另一种方法是从
    TabControl

    如图所示


    谢谢你,迈克尔·兰德尔这正是我想要的。
    class WizardPages : TabControl {
      protected override void WndProc(ref Message m) {
        // Hide tabs by trapping the TCM_ADJUSTRECT message
        if (m.Msg == 0x1328 && !DesignMode) m.Result = (IntPtr)1;
        else base.WndProc(ref m);
      }
    }