如何在一个Windows窗体面板中的一个Csharp面板中使用多个窗体?

MSU*_*MSU 5 .net c# windows

我正在构建一个儿童学习应用程序,点击面板上的按钮,我想在面板的同一位置显示不同的表单.你能帮忙解决任何演练或教程链接吗?

Vim*_*Raj 7

这个问题应该发布在Stackoverflow网站而不是这里.

但您可以使用此方法来处理此案例.

            subForm = new SubFormYouWantToLoad();
            subForm.TopLevel = false;
            subForm.FormBorderStyle = FormBorderStyle.None;
            ContainerPanel.Controls.Add(subForm , 0, 1);
            subForm .Visible = true;
Run Code Online (Sandbox Code Playgroud)

单击特定按钮时可以添加此代码.这里每个子表单都作为控件添加到Panel中.在添加另一个子窗体之前,应从面板的控制列表中删除子窗体.为此,最好移除,关闭和处置第一个.

        ContainerPanel.Controls.Remove(activeform);
        activeform.Close();
        activeform.Dispose();
Run Code Online (Sandbox Code Playgroud)


Dor*_*eka 5

代替表单使用用户控件并将其加载到面板中

如果要显示usercontrol1的示例

panel1.Controls.Clear();
panel1.Visible = true;
UserControl1 usr1 = new UserControl1();
usr1.Show();
panel1.Controls.Add(usr1); 
Run Code Online (Sandbox Code Playgroud)

如果usercontrol2

panel1.Controls.Clear();
panel1.Visible = true;
UserControl1 usr2 = new UserControl2();
usr2.Show();
panel1.Controls.Add(usr2); 
Run Code Online (Sandbox Code Playgroud)