|
3 / 3 / 4
Регистрация: 27.07.2015
Сообщений: 28
|
||||||
Создание нескольких Combobox с событием SelectedIndexChanged06.06.2018, 13:51. Показов 4270. Ответов 10
Метки нет (Все метки)
Всем привет.
Столкнулся с такой проблемой, прошу поделится мудростью. У меня есть контрол (flowLayoutPanel), в который я создаю динамически combobox + textbox (который не доступен) + button (кнопка удаления этих контролов). Созданные контролы связаны по tag-у и id названии. У combobox есть Item-ы, после выбора которых должен становится доступен textbox для ввода текста (если значение не выбрано, textbox не доступен). При выборе Item-а значение меняется во всех combobox-ах, давая доступ ко всем связанным textbox-ам (или не давая, на картинке другой способ). Как сделать по уму, чтобы изменение выбранного значения combobox-а отвечало только за связанный ему textbox? Когда динамически создаю combobox работаю с событием: cmbBox.SelectedIndexChanged += (SelectedValueChange); Пробовал через проверку фокуса контрола, что ошибочно, так как, проблема скорее всего в одинаковом событии у создаваемых combobox-ов. Но как сделать иначе, я что-то пока не догадался. Кликните здесь для просмотра всего текста
0
|
||||||
| 06.06.2018, 13:51 | |
|
Ответы с готовыми решениями:
10
ComboBox SelectedIndexChanged
Как привязать selectedindex к событию SelectedIndexChanged в ComboBox |
|
911 / 796 / 329
Регистрация: 08.02.2014
Сообщений: 2,391
|
|||||||
| 06.06.2018, 13:58 | |||||||
1
|
|||||||
|
3 / 3 / 4
Регистрация: 27.07.2015
Сообщений: 28
|
|
| 06.06.2018, 14:08 [ТС] | |
|
SeIZVeIZ, а ведь правда. Оказывается tag-и контролов сравниваются только через Equals (если не приводить их к String).
Но осталась другая проблема. При выборе Item-а в любом из combobox, значение выбираются во всех. Можете подсказать почему?
0
|
|
|
911 / 796 / 329
Регистрация: 08.02.2014
Сообщений: 2,391
|
|
| 06.06.2018, 14:15 | |
|
workerbro, код покажите полный
Добавлено через 2 минуты т.е момент создания комбобоксов и полный метод смены индексов как уже он вышел после тэгов
0
|
|
|
3 / 3 / 4
Регистрация: 27.07.2015
Сообщений: 28
|
||||||
| 06.06.2018, 14:22 [ТС] | ||||||
|
SeIZVeIZ,
Кликните здесь для просмотра всего текста
0
|
||||||
|
911 / 796 / 329
Регистрация: 08.02.2014
Сообщений: 2,391
|
|
| 06.06.2018, 14:46 | |
|
1)
if (cmb.Focused) сравнивать Tag нужно вместо этого2) судя по созданию у Вас в Tag всегда comboBox1.Text записывается, а там хоть меняется этот текст?
0
|
|
|
3 / 3 / 4
Регистрация: 27.07.2015
Сообщений: 28
|
||||||
| 06.06.2018, 14:56 [ТС] | ||||||
|
SeIZVeIZ,
2) Да, там всегда разный текст. 1) По поводу этого момента. Если вы посмотрите по коду, я сравниваю это дальше:
Сейчас получается проблема только в этом моменте: "При выборе Item-а в любом из combobox, значение выбираются во всех"
0
|
||||||
|
911 / 796 / 329
Регистрация: 08.02.2014
Сообщений: 2,391
|
|
| 06.06.2018, 14:57 | |
|
ах и да, код создания есть, вижу метод который это всё вызывает, но в каком месте это всё помещается на форму вашу?
0
|
|
|
3 / 3 / 4
Регистрация: 27.07.2015
Сообщений: 28
|
|
| 06.06.2018, 15:06 [ТС] | |
|
SeIZVeIZ, ммм, немного не понял. На форме лежит flowLayoutPanel, куда по нажатию button1_Click создается группа этих контролов
0
|
|
|
911 / 796 / 329
Регистрация: 08.02.2014
Сообщений: 2,391
|
||||||
| 06.06.2018, 15:56 | ||||||
Сообщение было отмечено workerbro как решение
Решение
workerbro, да я уже чуть позже заметил Parent, сейчас проверю точно скажу, суть Вашей проблемы в том что все созданные контролы связаны и при клике на 1 вызывается обработчик всех сразу, а этого быть не должно
Добавлено через 33 минуты workerbro, Путём махинаций выяснилось что во всё виноват идентичный DataSource во всех комбобоксах, убрал из создания его + после добавил cmbBox.Items.AddRange(str); и всё, значения меняются только в том что выбрали и соответственно событие вызывается однажды итого Ваш метод как-то так:
1
|
||||||
|
3 / 3 / 4
Регистрация: 27.07.2015
Сообщений: 28
|
|
| 07.06.2018, 06:38 [ТС] | |
|
SeIZVeIZ, спасибо! В DataSource и была проблема.
0
|
|
| 07.06.2018, 06:38 | |
|
Помогаю со студенческими работами здесь
11
Ассоциация нескольких элементов управления с одним событием Динамическое создание массива кнопок с событием Создание нового элемента событием onclick ListBox SelectedIndexChanged Проверка нескольких ComboBox Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает
монорепозиторий в котором находятся все исходники.
При создании нового решения, мы просто добавляем нужные проекты
и имеем. . .
|
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение:
В этой книге («Подход, основанный на вариантах использования») Ивар утверждает,
что архитектура программного обеспечения — это
структуры,. . .
|
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога
Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|
|
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем.
. . .
|
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
|
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
|
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
|