2014-02-28 34 views
1

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

但是,这不能工作,因为测试[]是一个字符串,而不是在这种情况下,一个变量。我将如何达到目的?

回答

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

工程就像一个魅力!现在使用List方法将不同的变量分配到一起会更快。 – RoastDuck

相关问题