如何通过在C#中单击按钮将用户控件加载到面板

时间:2018-05-24 05:45:51

标签: c# winforms user-controls panel

我想用按钮将用户控件加载到面板,但是当我尝试使用此代码时,它什么也没显示。我想知道我的问题是否有解决方案,因为我已经尝试过很多来自互联网的解决方案,但没有任何效果。

这是我的代码:

用户cotrol

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();
    }

主要表格

enter image description here

用户控制

enter image description here

感谢您的关注。

1 个答案:

答案 0 :(得分:0)

试试这个。 希望这会有所帮助。你

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);
    }

}