如何将用户控件添加到面板

Sal*_*leh 9 c# visual-studio-2010 winforms

我在我的项目中创建了多个用户控件,我需要做的是能够在面板控件上切换它们.

例如,如果用户单击button1,userControl1将在删除其上的每个控件后添加到面板,依此类推.

我有这个代码:

panel1.Controls.Add(MyProject.Modules.Masters);
Run Code Online (Sandbox Code Playgroud)

但它不起作用.

我怎么能这样做?

Jus*_*ony 20

您必须实例化您的控件.您必须确保适当设置尺寸,或者确保适当的码头填充.

var myControl = new MyProject.Modules.Masters();
panel1.Controls.Add(myControl);
Run Code Online (Sandbox Code Playgroud)


小智 9

您需要实例化一个新的MyProject.Modules.Masters.

MyProject.Modules.Masters myMasters = new MyProject.Modules.Masters()
panel1.Controls.Add(myMasters);
Run Code Online (Sandbox Code Playgroud)

这只会向panel1添加一个新控件.如果你想在添加控件之前清除面板中的所有内容,就像你在问题中所说的那样,先调用它:

panel1.Controls.Clear();
Run Code Online (Sandbox Code Playgroud)