Поиск объекта формы во время выполнения - PullRequest
0 голосов
/ 30 августа 2018

У меня слишком много флажков, кнопок, меток .... в моем C # from, возможно ли search и go to один из них во время выполнения? Как я знаю в Visual Studio, вы можете использовать Properties Windows, и это список ComboBox, например:

button1 System.Windows.Forms.Button
button2 System.Windows.Forms.Button
button3 System.Windows.Forms.Button
label1 System.Windows.Forms.Label
label2 System.Windows.Forms.Label
label3 System.Windows.Forms.Label

когда вы выбираете один из них, компилятор покажет, где он находится, это здорово, но я хочу сделать это во время выполнения и искать по его атрибуту name или text

1 Ответ

0 голосов
/ 30 августа 2018

в событии SelectionIndexChanged вашего выпадающего списка вы можете извлечь имя элемента управления. Если он у вас есть, вы можете найти его в свойстве Controls вашего Form:

Control toBeHighlighted = Controls.FirstOrDefault(x=> x.Name.Contains(hereSearchName));

// Now do what ever you want with it.

Если элемент управления слишком общий и вам нужен точный тип, вы можете получить его, используя OfType<Type>()

Button buttonToBeHighlighted = Controls.OfType<Button>()
                                       .FirstOrDefault(x=> x.Name.Contains(hereSearchName));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...