如何克隆Windows窗体控件

时间:2014-04-07 04:19:56

标签: c# winforms controls clone

我有一个带有Groupbox的C#表单。用户必须输入任何所需的数字(整数),当用户点击" ADD"时,必须根据用户输入的数字将组框复制并粘贴在同一表格上。如何创建GroupBox的精确副本并将其粘贴到同一表单中?请参阅随附的屏幕截图。

enter image description here

非常感谢任何帮助。感谢

我使用了Sriram的代码,但表单只添加了2个groupBox:

    private void button1_Click(object sender, EventArgs e)
    {

        int containers = 0;
        int.TryParse(textBox1.Text, out containers);

        for (int i = 0; i < containers; i++)
        {
            flowLayoutPanel1.Controls.Add(groupBox1);
        }
    }

1 个答案:

答案 0 :(得分:1)

我建议您创建一个用户控件,其中包含您使用子控件显示的组框。

我们将其称为MyUserControl,因此当您创建MyUserControl的实例时,您将获得包含该组的所有控件。

要显示控件而不相互重叠,您可以使用FlowLayoutPanel自动排列控件。然后在按钮点击代码中,您只需编写

void addButton_Click(object sender, EventArgs e)
{
    int contaniners = 0;
    int.TryParse(txtContainers.Text, out contaniners);

    for (int i = 0; i < contaniners; i++)
    {
        flowLayoutPanel.Controls.Add(new MyUserControl());
    }
}