Как вы обрабатываете множественный выбор в элементе управления стилем раскрывающегося списка?

У меня есть приложение WinForms с представлением, в котором пользователь выбирает один временной интервал из списка предопределенных временных интервалов в ComboBox, при этом для его свойства DropDownStyle установлено значение DropDownList.

Сейчас требования изменились. Пользователям понадобится возможность делать множественный выбор из списка промежутков времени.

Можно ли сделать несколько выборов в ComboBox? Как вы представляете эти варианты, когда ComboBox свернут? Не забывайте об аспекте юзабилити.

Существует ли какой-либо другой элемент управления (встроенный или сторонний, предпочтительно какой-либо раскрывающийся список), который может удовлетворить потребности моих пользователей?

Обновление: вводящий в заблуждение заголовок...


person Christoffer Lette    schedule 03.10.2008    source источник


Ответы (6)


Я согласен с @Thomas Owens в аспекте удобства использования. Если вы выбираете несколько элементов, пользователь должен иметь возможность видеть все выбранные элементы. Возможно, для этого подойдет поле с отмеченным списком.

Если вы все еще настроены на использование выпадающего типа управления, взгляните на набор инструментов редактора DevExpress. Я только что просмотрел их демонстрацию, и там есть элемент управления, который называется PopupContainerEdit, который позволит вам открыть список элементов с флажками. Когда всплывающее окно рушится, вы всегда можете отобразить элементы в виде списка с разделителями-запятыми. (хотя это может быть непригодно, если список длиннее поля)

person FryHard    schedule 03.10.2008
comment
Спасибо, я посмотрю файл PopupContainerEdit. - person Christoffer Lette; 03.10.2008
comment
Не тот ответ, который я искал, но все же лучший. Спасибо за ссылку. - person Christoffer Lette; 06.10.2008

Даже если это возможно, я бы предложил изменить тип ввода. Когда я вижу раскрывающийся список, я думаю, что должен выбрать один. Возможность (и даже то, как) выбрать несколько вариантов может ускользнуть от вашего пользователя. Стандартный список может быть более подходящим с точки зрения удобства использования.

person Thomas Owens    schedule 03.10.2008

Я не думаю, что это возможно из коробки без написания кучи пользовательского кода.

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

person mattlant    schedule 03.10.2008
comment
Согласованный. И написать кучу пользовательского кода... не получится. - person Christoffer Lette; 03.10.2008

Вместо этого я бы использовал CheckedListBox. Он визуализирует множественный выбор, и вы можете выбрать несколько записей. Вот ссылка Microsoft на класс .

person Mil    schedule 03.10.2008

Windows.Forms.ComboBox не может обеспечить множественный выбор.

person Phil Wright    schedule 03.10.2008

Вы ищете ListBox.

person Vivek    schedule 03.10.2008