在我的表单中,我有一个“加号按钮”,当用户单击它时,新TextBox
表单将添加到表单中:
private void btnPlus_Click(object sender, EventArgs e)
{
TextBox tb = new TextBox();
tb.Name = "textBox" + countTb.ToString();
this.Controls.Add(tb);
countTb++;
}
我的问题是:我不知道如何访问这些TextBoxes
。我有一个保存按钮,当用户单击它时,我必须将所有按钮保存TextBox.Text
到数据库中,但是我不知道如何找到它们。
Controls.OfType
如果TextBoxes
在表格上方,则可以使用:
var allTextBoxes = this.Controls.OfType<TextBox>();
foreach(TextBox txt in allTextBoxes)
{
// ...
}
另一种方法是使用ControlCollection.Find
查找具有给定名称的控件:
for(int i = 1; i <= countTb; i++)
{
Control[] txtArray = this.Controls.Find("textBox" + i, true); // recursive search
if (txtArray.Length > 0)
{
TextBox txt = (TextBox)txtArray[0];
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句