Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Работа с большим числом компонентов 
:(
    Опции темы
arcsupport
Дата 26.7.2009, 19:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 725
Регистрация: 24.10.2008

Репутация: нет
Всего: 2



Пускай на форме есть много меток с именами Метка1, Метка2, Метка3,... и полей ввода Поле1,Поле2,Поле3,...

1. Как присваивать значения их свойствам в цикле? 
Что-то вроде

for (int = 1; i <= 10; i++)
   Меткаi.Свойство = Значение[i]

Причем компоненты уже существуют на форме, а не создаются в рантайм

2. Как сделать единый обработчик события TextChanged для всех полей ввода.
Естественно, чтобы обработчик "понимал", от какого идет событие

Это сообщение отредактировал(а) arcsupport - 26.7.2009, 19:49
PM MAIL   Вверх
ДобренькийПапаша
Дата 26.7.2009, 20:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1278
Регистрация: 14.1.2006
Где: г.Москва

Репутация: нет
Всего: 7



1)Так:

Код

foreach(Control ctrl in this.Controls)
{
//Работаем только с текстовыми полями
if(ctrl.GetType()==typeof(TextBox))         //если надо обойти Label, то передавай Label.
ctrl.Text="GodFatherDoSomeDotNet";
}


2)Если работаеть в IDE типа Visual Studio (если я не ошибаюсь), зажми клавишу Ctrl и выдели мышкой все твои текстбоксы, затем войди во вкладку Events и кликни два раза в поле напротив нужного события))) 


--------------------
Меня зовут Себастьян Парейра, торговец чёрным деревом.
PM MAIL   Вверх
arcsupport
Дата 26.7.2009, 23:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 725
Регистрация: 24.10.2008

Репутация: нет
Всего: 2



По первому вопросу.
Так я и сам знаю. Меня больше интересует преобразование строки, содержащей имя компонента, ссылку (или что там) на него
Т.е. по имени компонента получить переменную, содержащую него самого.

По второму вопросу.
А как я пойму, к какому компоненту обращаются?
PM MAIL   Вверх
antslava
Дата 27.7.2009, 00:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 45
Регистрация: 16.7.2008
Где: Одесса

Репутация: нет
Всего: 2



(sender as TextBox).Name так ты узнаешь имя компоненты.
PM MAIL ICQ Skype   Вверх
Экскалупатор
Дата 27.7.2009, 00:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1746
Регистрация: 1.4.2009
Где: г. Минск

Репутация: 11
Всего: 24



arcsupport, у событий есть (object sender, EventArgs e), где sender и будет то что вызвало событие. т.е. обращаясь к sender ты будешь обращаться к тому объекту который вызвал событие.

Добавлено через 29 секунд
antslava, обогнал

Добавлено через 1 минуту и 32 секунды
вот так кстати можно по имени искать контролы:
Код

this.Controls.Find("textBox1", false)

PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.1089 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.