Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Разработка Windows Forms > Получить имена всех компонентов на форме


Автор: dimonpage1 24.10.2007, 14:29
добрый день, подскажите кодом, как получить имена всех компонентов на форме.
я использовал:
foreach (Control con in this.Controls)
            {
                        listbox.Items.Add(con.Name); 
            }
но мне неужны менюшки и другие уомпоненты, приходится делать еще одну пробежку по меню и т.д., а хотелось бы все в одним махом smile

Автор: stab 24.10.2007, 14:53
одним не получится, для каждого подобного контрола\компонента придётся писать отдельный специфический код.

Автор: ivashkanet 24.10.2007, 14:56
dimonpage1, тебе подойдёт рекурсия.

Автор: fantast 24.10.2007, 15:06
не, одним не получиться, и рекурсия тут не спасет, менюшки и ,скажем, кнопки совсем разные вещи и храняться тоже по-разному

Автор: ivashkanet 24.10.2007, 15:18
fantast, но они все Контролы (класс Control), так что рекурсия очень даже поможет. Тем более свойство name есть у всех.

P.S. Я так каскадный перевод всех надписей делал ;-)

Добавлено через 5 минут и 22 секунды
Цитата(ivashkanet @  24.10.2007,  15:18 Найти цитируемый пост)
о они все Контролы (класс Control)

Наврал. Менюшки действительно не контролы...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)