【发布时间】:2020-06-25 13:55:29
【问题描述】:
#更新: 我有 C# 表单,其中包含 20 文本框 元素。 有没有办法通过使用所谓的变量名来选择这些元素。
让我们想象一下这个场景:
textBox1.Text="foobar";
textBox2.Text="foobar";
textBox3.Text="foobar";
textBox4.Text="foobar";
textBox5.Text="foobar";
textBox6.Text="foobar";
textBox7.Text="foobar";
textBox8.Text="foobar";
.....
而我是这样的:
for(int i=1;i<10;i++){
textBox[i].Text="foobar";
}
【问题讨论】:
-
见我的previous SO answer。使用
"textBox" + i在字符串中构建您的控件名称,然后将其传递给Controls.Find(),如我的示例所示。 -
我看到了您的代码,非常感谢您的回复。但我想知道是否有另一种
方法可以做到这一点。 -
@Sean, (Pavel Anikhouski, Sajid);我已经更新了我的问题。是否有可能重新打开它?
-
有,但前提是所有这些文本框都在同一个容器中。例如,如果它们都包含在表单中,您可以这样做:
this.Controls["textBox" + i].Text = "foobar";。我的另一个示例将“按名称”找到控件,无论它们位于何处。 -
你不能,除非问题真的被重新打开。没问题。祝你有美好的一天!