在表单上复制一行

时间:2016-06-29 00:41:40

标签: c# forms visual-studio class

我有一个表单,最初有一行用于用户输入的框。我有一个按钮,当点击时,应该在前一个下面创建一个相同的行。该按钮应该能够被多次单击,以添加多行。

我如何实现这一点,以一种方式为每一行中的每个控件赋予它自己唯一的名称(所以我可以在我的程序中引用它),并保持行的正确格式化?

我尝试为行设置一个类,如下所示:

class SubjectRow
{
  //every row has these boxes, plus some more textboxes
  public ComboBox subjectBox;
  public Label maxBox;
  public TextBox aBox;

  public SubjectRow(ComboBox _subjectBox, Label _maxBox, TextBox _aBox)
  {
    subjectBox = _subjectBox;
    maxBox = _maxBox;
    aBox = _aBox;
  }
}

...但我对如何让按钮生成带有自己名字的新控件感到困惑。我的想法是这样的:

buttonClicked
{
  SubjectRow row1 = new SubjectRow(subjectBox1, maxBox1, aBox1);
}

但我需要一种方法来更改控件名称,而无需手动输入全部;表单上可能有很多行。

有没有办法使用按钮向表单添加更多行,为每行中的每个控件指定一个唯一名称?这需要在某种循环中完成。

0 个答案:

没有答案