Найти элемент управления по имени в элементах управления Windows Forms
У меня есть список имен моих текстовых полей, и я хочу найти элемент управления по имени. Как это возможно?
3 ответа
Решение
Используйте Control.ControlCollection.Find.
TextBox tbx = this.Controls.Find("textBox1", true).FirstOrDefault() as TextBox;
tbx.Text = "found!";
РЕДАКТИРОВАТЬ для asker:
Control[] tbxs = this.Controls.Find(txtbox_and_message[0,0], true);
if (tbxs != null && tbxs.Length > 0)
{
tbxs[0].Text = "Found!";
}
Ты можешь использовать:
f.Controls[name];
куда f
ваша переменная формы Это дает вам контроль с именем name
,
TextBox tbx = this.Controls.Find("textBox1", true).FirstOrDefault() as TextBox;
tbx.Text = "found!";
Если Controls.Find не найден, "textBox1" => ошибка. Вы должны добавить код.
If(tbx != null)
Редактировать:
TextBox tbx = this.Controls.Find("textBox1", true).FirstOrDefault() as TextBox;
If(tbx != null)
tbx.Text = "found!";