![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| dzjundzja88 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 17.2.2011 Репутация: нет Всего: нет |
Создаю динамически 10 текстбоксов
Как мне теперь считать со всех текстбоксов (допустим тоже в цикле)? Это я просто написал в цикле 10, а вообще я заранее не знаю сколько их будет. |
|||
|
||||
| dj100500 |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 139 Регистрация: 9.10.2010 Репутация: нет Всего: нет |
ну загони их в List<TextBox>
а потом в цикле пройди foreach (TextBox t in MyBoxes) { MessageBox.Show(t.Text); } |
|||
|
||||
| puZzo |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 144 Регистрация: 12.3.2008 Репутация: нет Всего: нет |
Я тоже с подобным работал, делал как предложил dj100500, но меня интересовало, да и интересует, а как обратиться к объекту, заведомо не зная его имени? В Delphi давненько делал каким-то макаром подставляя вместо имени string, содержащий имя объекта..
|
|||
|
||||
| Экскалупатор |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1746 Регистрация: 1.4.2009 Где: г. Минск Репутация: 11 Всего: 24 |
puZzo, ты знаешь что происходит в этой строке?
для чего тебе имя? у тебя есть какие то объекты, и есть ссылки на эти объекты, вот по ним и обращайся, грубо говоря, эти текстбоксы надо добавить в какую то коллекцию и потом обращаться к ним через эту коллекцию. з.ы. только боюсь все твои тексбоксы после окончания цикла будут уничтожены, если ты все оставишь так как оно описано сейчас и не передашь ссылки на текстбоксы какой то переменной которая будет находится в другой области видимости(там где ее будут использовать). почитай про области видимости и про то что такое классы и как с ними работать. Это сообщение отредактировал(а) Экскалупатор - 2.3.2011, 21:05 |
|||
|
||||
| puZzo |
|
||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 144 Регистрация: 12.3.2008 Репутация: нет Всего: нет |
Экскалупатор, Создается экземпляр класса TextBox, а точнее ссылка на этот экземпляр, new выделяет память, а TextBox() конструктор того самого класса?
как я делал в Delphi:
а это то, что мне интересно было в .NET и в принципе может быть реализовано в реальных приложениях, когда не нужно делать много контролов.
з.ы.: у меня в дипломе был один момент, когда нужно было к контролам обращаться именно таким способом. dzjundzja88, а тебе действительно нужно делать коллекцию Это сообщение отредактировал(а) puZzo - 3.3.2011, 05:48 |
||||
|
|||||
| Экскалупатор |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1746 Регистрация: 1.4.2009 Где: г. Минск Репутация: 11 Всего: 24 |
puZzo, так в чем проблема? делай коллекцию текстбоксов, при создании текстбокса присваивай имена и ищи по коллекции(будет даже быстрее и проще чем искать в коллекции всех контролов). можно еще создать коллекцию имен если уж так надо. по сути Controls это и есть коллекция, можно добавлять прямо в нее, потом делать коллекцию имен и по этим именам искать. просто если сделать отдельную коллекцию по своим контролам то круг поиска существенно сузится.
|
|||
|
||||
| puZzo |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 144 Регистрация: 12.3.2008 Репутация: нет Всего: нет |
да это то все понятно, просто вставал у меня когда-то такой вопрос, ну вот и решение нашлось) а коллекции то я давно использую для этих целей;-)
|
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |