我有一个包含20个TextBoxes(2-22)的表单,我想将它们全部添加为一个List<TextBox>,因此我可以使用for-statement在所有示例中添加相同的文本。

我的想法(笑):

List<TextBox> textBoxes = new List<TextBox>();

for(int i = 2; i < 23; i++) {

//This String should refer to = textBox2, textBox3, etc
textBoxes.Add("textBox"+ Convert.ToString(i));

}


但这是行不通的,因为它无法将字符串转换为textBoxName。
你可以这样做:

  textBoxes.Add(textBox2);
  textBoxes.Add(textBox3);
  textBoxes.Add(textBox4);
  ...So on


但是不是没有人有时间... :)

最佳答案

如果是WinForms,则应该可以...

textBoxes.Add((TextBox)Controls.Find("textBox" + i, true)[0]);

07-26 01:31