我想知道如何使用 C# 获取表单中的所有文本框名称?
这是我生成动态文本框的代码:
private void Form1_Load(object sender, EventArgs e)
{
for (int i = 1; i <= 5; i++)
{
TextBox txtbox = new TextBox();
txtbox.Name = "txtbox" + i;
flowLayoutPanel1.Controls.Add(txtbox);
Label lbl = new Label();
lbl.Name = "lbl" + i;
lbl.Text = lbl.Name;
flowLayoutPanel2.Controls.Add(lbl);
}
}
private void button1_Click(object sender, EventArgs e)
{
string[] textBoxNamesArray = this.Controls.OfType<TextBox>()
.Select(r => r.Name)
.ToArray();
var textboxes = string.Join(",", textBoxNamesArray);
MessageBox.Show(textboxes);
}
最佳答案
您可以使用 LINQ 从当前窗体中获取类型为 TextBox
的所有控件的名称。以下查询将返回一个包含所有名称的字符串数组。
string[] textBoxNamesArray = flowLayoutPanel1.Controls.OfType<TextBox>()
.Select(r => r.Name)
.ToArray();
记得包含 using System.Linq;
关于c# - 在使用 C# 获取表单中的所有文本框名称时使用什么函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13578930/