我有10个文本框,名为textBox1,textBox2为textBox10。我想在每个文本中分配字符串文本:
textBox1.text = "Stackoverflow1";
textBox2.text = "Stackoverflow2";
...
textBox10.text = "Stackoverflow10";
是否可以在循环中实现?类似的东西:
for(int i=1; i<=10; i++)
{
???? = "Stackoverflow" + i.ToString();
}
我在考虑使用列表,但是我可以将“变量”添加到列表中吗?假设我创建了一个列表:
List<String> Testing = new List<String>();
Testing.add(textBox1.text);
Testing.add(textBox2.text);
...
Testing.add(textBox10.text);
for(int i=1; i<=10; i++)
{
Testing[i-1] = "Stackoverflow" + i.ToString();
}
但这不起作用,因为Testing []是一个字符串,在这种情况下不是变量。我怎样才能达到目的?
答案 0 :(得分:7)
你几乎拥有它。只需将文本框本身放在列表中,而不是字符串。
List<TextBox> textBoxes = new List<TextBox>();
textBoxes.Add(textBox1);
textBoxes.Add(textBox2);
textBoxes.Add(textBox3);
// etc.
for (int i = 0; i < textBoxes.Count; ++i)
{
textBoxes[i].Text = "Stackoverflow" + (i + 1).ToString();
}