Lih*_*ini 2 c# textbox for-loop winforms
假设我有10个文本框,我想将相同的文本放入每个文本框中.我不想写textBoxNum. Text = "hello!"十次所以我可能写这样的东西:
for(int i=1; i<=10; i++)
{
textBox + i. Text = "hello!";
}
Run Code Online (Sandbox Code Playgroud)
显然,它不起作用.
如何通过for循环完成?
您需要将所有文本框加载到列表或数组结构中,这将允许您迭代它.
TextBox[] boxes = { tb1, tb2, tb3, ... };
Run Code Online (Sandbox Code Playgroud)
否则,您可以检查Controls表单/容器的属性以查找该TextBox类型的项目.如果控件可以嵌套在更深的容器中,您可能需要以递归方式探索它们(此时,我会认真考虑一种数组方法,除非您要加载一些可怕的文本框).但作为一个起点,你可能会有
foreach (var tb in this.Controls.OfType<TextBox>())
{
tb.Text = "whatever";
}
Run Code Online (Sandbox Code Playgroud)