C#获取名称中带有变量的文本框
C# fetch textbox with variable in name
我的代码中有 8 个可见的文本框 =false。
现在我想在按钮单击事件后将它们设置为可见。
文本框名称是:
tb1
待定2
待定3
...
我想用 tb+i (i=1) 获取文本框并使它们可见。
在第一个文本框可见后,有一个 i++,所以每次点击只会多显示一个文本框。
我已经试过了,但没用:
TextBox textbox = (TextBox)Controls.Find(string.Format("tb"+i), false).FirstOrDefault();
textbox.Visible = true; */
i++;
谢谢。
您好,您可以尝试以下方法
//I added the if loop so that you can not go higher then what you have said
if (i < 9)
{
TextBox tb = (TextBox)this.Controls["tb" + i];
tb.Visible = true;
}
现在我有了解决方案:
if (i < 9) { var textbox = Controls.Find("tb" + i, true).FirstOrDefault(); if (textbox != null) { textbox.Visible = true; } i++; }
我的代码中有 8 个可见的文本框 =false。 现在我想在按钮单击事件后将它们设置为可见。
文本框名称是:
tb1 待定2 待定3 ...
我想用 tb+i (i=1) 获取文本框并使它们可见。 在第一个文本框可见后,有一个 i++,所以每次点击只会多显示一个文本框。
我已经试过了,但没用:
TextBox textbox = (TextBox)Controls.Find(string.Format("tb"+i), false).FirstOrDefault();
textbox.Visible = true; */
i++;
谢谢。
您好,您可以尝试以下方法
//I added the if loop so that you can not go higher then what you have said
if (i < 9)
{
TextBox tb = (TextBox)this.Controls["tb" + i];
tb.Visible = true;
}
现在我有了解决方案:
if (i < 9) { var textbox = Controls.Find("tb" + i, true).FirstOrDefault(); if (textbox != null) { textbox.Visible = true; } i++; }