Страницы

Поиск по вопросам

среда, 12 февраля 2020 г.

Поиск элемента по имени в WinForms

#c_sharp #winforms #controls


Мне надо на форме именно найти элемент (button, panel и т.д.) по его name (имени
переменной). Как это сделать?
    


Ответы

Ответ 1



Метод Control.ControlCollection.Find - выполняет поиск элементов управления по их свойству Name и создает массив из всех элементов управления, которые соответствуют условиям поиска. Поиск элементов, совпадающих по имени, будет выглядеть так: var textBoxes = this.Controls.Find("textBox", true); Если необходимо просто найти в коллекции элемент по ключу, тут нужно знать ключ (имя элемента), то вот так: var textBox = this.Controls["textBox1"]; Проверить, содержится ли элемент в контролах можно с помощью метода Control.ControlCollection.ContainsKey. К примеру, взять элемент по ключу будет правильнее, если заранее проверить, содержится ли он в коллекции, код будет выглядеть так: var name = "textBox1"; if (this.Controls.ContainsKey(name)) { var textBox = this.Controls[name]; // делаем с этим элементом то, что нам нужно }

Комментариев нет:

Отправить комментарий