C# 如何在C中通过单击按钮将用户控件加载到面板#
我想用一个按钮将一个用户控件加载到一个面板上,但当我尝试这段代码时,它什么也没有显示。我想知道我的问题是否有解决办法,因为我已经尝试了许多来自互联网的解决方案,但都没有效果 这是我的代码: 关于用户控制C# 如何在C中通过单击按钮将用户控件加载到面板#,c#,winforms,user-controls,panel,C#,Winforms,User Controls,Panel,我想用一个按钮将一个用户控件加载到一个面板上,但当我尝试这段代码时,它什么也没有显示。我想知道我的问题是否有解决办法,因为我已经尝试了许多来自互联网的解决方案,但都没有效果 这是我的代码: 关于用户控制 public partial class UserControl1 : UserControl { public static UserControl1 _instance; public static UserControl1 Instance { get {
public partial class UserControl1 : UserControl
{
public static UserControl1 _instance;
public static UserControl1 Instance {
get {
if (_instance == null)
_instance = new UserControl1();
return _instance;
}
}
public UserControl1()
{
InitializeComponent();
}
}
在winform上单击按钮
private void b1_Click(object sender, EventArgs e)
{
if (!panel5.Controls.Contains(UserControl1.Instance))
{
panel5.Controls.Add(UserControl1.Instance);
UserControl1.Instance.Dock = DockStyle.Fill;
UserControl1.Instance.BringToFront();
}
else
UserControl1.Instance.BringToFront();
}
主要形式
用户控制
谢谢你的关心。试试这个。
希望这对你有帮助
private void set2ControlTopanel(control f) {
try {
p2Form = f;
p2Form.Dock = DockStyle.Fill;
p2Form.Show();
panelTop.Controls.Add(p2Form);
p2Form.BringToFront();
}
catch (Exception ex) {
MsgBox(ex.Message);
}
}
你想让用户控件是单例的吗?对不起,我不明白。我想通过单击仪表板按钮向窗体显示用户控件。另外,你的代码工作正常。确保您的面板正确放置并且在表单上可见。将UserControl的静态实例添加到表单中不是一个好主意。您能解释一下您的代码的作用以及它如何帮助OP解决问题吗?还有,这是什么?@Amit我认为p2Form是用户控件的名称,它是要添加控件的面板的名称。移动代码会将完整窗体的控件停靠到面板上