|
Имена ComboBox в цикле
|
|||
---|---|---|---|
#18+
Добрый день! Подскажите, может кто сталкивался с таким. Имеется примерно 16 combobox'ов и для каждого я вручную подцепляю свой DataTable и прописываю различные параметры. Можно ли как то в цикле указать имена combobox'ов? Код: c# 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2015, 08:43 |
|
Имена ComboBox в цикле
|
|||
---|---|---|---|
#18+
Etamin419, Вот так хотите? Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
Вообще-то вы не так решаете задачу, сейчас вас в этом убеждать будут... Но для начала надо набить шишку самостоятельно.... :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2015, 09:12 |
|
Имена ComboBox в цикле
|
|||
---|---|---|---|
#18+
D129, благодарю, то что нужно. Только почему он начинает перебирать с конца? т.е. ComboBox16, 15 ..... ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2015, 09:57 |
|
Имена ComboBox в цикле
|
|||
---|---|---|---|
#18+
Etamin419, Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2015, 10:04 |
|
Имена ComboBox в цикле
|
|||
---|---|---|---|
#18+
Тут нужна рекурсия ибо контрол может содержать в себе кучу других контролов которые могут содержать в себе еще другую тучу контролов и тд. За место foreach используй for(int i=0;i<this.Controls.Count;i++) this.Controls[i] ... ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2015, 10:06 |
|
Имена ComboBox в цикле
|
|||
---|---|---|---|
#18+
fortibransaТут нужна рекурсия ибо контрол может содержать в себе кучу других контролов которые могут содержать в себе еще другую тучу контролов и тд. За место foreach используй for(int i=0;i<this.Controls.Count;i++) this.Controls[i] ... Если потелепатить на расстоянии, то вообще нужна динамическая генерация контролов при чтении данных из базы... Но это не сразу кажется очевидным и самым простым решением - к этому надо придти. Судя по вопросу - автор осваивает винформы самостоятельно, поэтому надо подождать.... :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2015, 10:10 |
|
Имена ComboBox в цикле
|
|||
---|---|---|---|
#18+
fortibransaЗа место foreach используй for(int i=0;i<this.Controls.Count;i++) this.Controls[i] ... Странный совет ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2015, 10:57 |
|
Имена ComboBox в цикле
|
|||
---|---|---|---|
#18+
Arm79fortibransaЗа место foreach используй for(int i=0;i<this.Controls.Count;i++) this.Controls[i] ... Странный совет Попытка перебора в нужном порядке без сортировки. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2015, 11:37 |
|
Имена ComboBox в цикле
|
|||
---|---|---|---|
#18+
Arm79fortibransaЗа место foreach используй for(int i=0;i<this.Controls.Count;i++) this.Controls[i] ... Странный советОбоснуй. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2015, 11:39 |
|
Имена ComboBox в цикле
|
|||
---|---|---|---|
#18+
А что там обосновывать? Если какой-либо класс поддерживает IEnumerable, то и цикл нужно использовать на его основе, если нет СПЕЦИАЛЬНЫХ показаний к применению других типов циклов. Например, если нужно выиграть грошик процессорного времени. Доступ по индексу вынуждает вас делать предположения о структуре класса, что явно излишне. Так что уж вы обоснуйте, чем вас foreach не устроил, что вы дали совет на for ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2015, 11:46 |
|
Имена ComboBox в цикле
|
|||
---|---|---|---|
#18+
D129Arm79пропущено... Странный совет Попытка перебора в нужном порядке без сортировки. Это ошибочная трактовка. И опять таки, предположение о том, как хранятся данные в класса. Понятно, что никто не мешает исходники посмотреть, и не предположения делать, а точно знать. Но концептуально это неправильно. Тем более, что имена контролов могут и не заканчиваться на цифры :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2015, 12:01 |
|
Имена ComboBox в цикле
|
|||
---|---|---|---|
#18+
Arm79, Контролы в той коллекции хранятся по порядку поступления этих контролов в ту коллекцию, что не так в этом утверждении? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2015, 12:04 |
|
Имена ComboBox в цикле
|
|||
---|---|---|---|
#18+
Arm79А что там обосновывать? Если какой-либо класс поддерживает IEnumerable, то и цикл нужно использовать на его основе, если нет СПЕЦИАЛЬНЫХ показаний к применению других типов циклов. Например, если нужно выиграть грошик процессорного времени. Доступ по индексу вынуждает вас делать предположения о структуре класса, что явно излишне . Так что уж вы обоснуйте, чем вас foreach не устроил, что вы дали совет на forЧаво? Ты это об чЁм? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2015, 12:04 |
|
Имена ComboBox в цикле
|
|||
---|---|---|---|
#18+
fortibransaArm79А что там обосновывать? Если какой-либо класс поддерживает IEnumerable, то и цикл нужно использовать на его основе, если нет СПЕЦИАЛЬНЫХ показаний к применению других типов циклов. Например, если нужно выиграть грошик процессорного времени. Доступ по индексу вынуждает вас делать предположения о структуре класса, что явно излишне . Так что уж вы обоснуйте, чем вас foreach не устроил, что вы дали совет на forЧаво? Ты это об чЁм? Вот об этом: fortibransaКонтролы в той коллекции хранятся по порядку поступления этих контролов в ту коллекцию Сегодня так, завтра по другому. Андестенд? Не нужно завязываться на внутреннюю структуру внешнего класса. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2015, 12:07 |
|
Имена ComboBox в цикле
|
|||
---|---|---|---|
#18+
Arm79fortibransaпропущено... Чаво? Ты это об чЁм? Вот об этом: fortibransaКонтролы в той коллекции хранятся по порядку поступления этих контролов в ту коллекцию Сегодня так, завтра по другому. Андестенд? Не нужно завязываться на внутреннюю структуру внешнего класса.Ты не перетрудился, ТС спросил почему не по порядку, ему ответили, перебирай как массив будет в порядке поступления. В любом случае это будет МАССИВ. Никто не собирается завязываться ни на какие внутренние структуры внешнего класса (вообще какой-то набор слов). ТС задал простой вопрос, он новичок, ему нужен простой ответ без этого бреда ООП. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2015, 12:13 |
|
Имена ComboBox в цикле
|
|||
---|---|---|---|
#18+
fortibransaТы не перетрудился, ТС спросил почему не по порядку, ему ответили, перебирай как массив будет в порядке поступления. В любом случае это будет МАССИВ. Никто не собирается завязываться ни на какие внутренние структуры внешнего класса (вообще какой-то набор слов). ТС задал простой вопрос, он новичок, ему нужен простой ответ без этого бреда ООП. 1) Не ты, а вы. 2) в данном конкретном случае МОЖЕТ и по порядку, но не факт что для других аналогичных классов это утверждение справедливо, как и не факт, что в будущих версиях это не изменится. Понятно, что вероятность этого стремится с нулю, но завязываться на вероятности не стоит. 3) Для Control - может и всегда будет массив. А для других классов - может и не массив. 4) Вот вы и завязываетесь - считая, что внутри Control содержит элементы в массиве. И что каждый последующий добавленный элемент добавляется в конец. 5) Точно, бред из ООП - использование предназначенного для перебора интерфейса IEnumerable. ТС нужно в руки чистый C дать, чтобы он не заморачивался с этим бредовым ООП. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2015, 12:22 |
|
Имена ComboBox в цикле
|
|||
---|---|---|---|
#18+
Arm79, да штож тебя понесло-то так. Мы тут ваще-то не на светском рауте. И в любом случае массив останется массивом хоть ты как его называй, компутер умеет только складывать, все остальное основано на этом и тд и тп. Хватит сратся, а то ТС заявит куда надо ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2015, 12:33 |
|
Имена ComboBox в цикле
|
|||
---|---|---|---|
#18+
Etamin419Можно ли как то в цикле указать имена combobox'ов? [/src] А если на форме завтра появится комба, у которой другое предназначение? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2015, 13:04 |
|
Имена ComboBox в цикле
|
|||
---|---|---|---|
#18+
PallarisEtamin419Можно ли как то в цикле указать имена combobox'ов? А если на форме завтра появится комба, у которой другое предназначение? "Я же предупреждал.... Это добром не кончится..." (с) капитан Зеленый. :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2015, 15:22 |
|
Имена ComboBox в цикле
|
|||
---|---|---|---|
#18+
эмм...ребята, спасибо мне хватило этого решения Код: c# 1. 2. 3. 4. 5. 6. 7.
все работает так, как задумалось. PallarisА если на форме завтра появится комба, у которой другое предназначение? есть конечно вероятность что может появиться, но обойти всегда можно будет.....как нибудь) также это задача требовалась мне и для других вариантов: собрать значения во всех комобобоксах и сохранить стрингом их в базу (свои заморочки). Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9.
... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2015, 11:48 |
|
|
start [/forum/topic.php?fid=20&msg=38874712&tid=1401926]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
140ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
others: | 347ms |
total: | 586ms |
0 / 0 |