2008-10-03 8 views
5

Tengo una aplicación WinForms con una vista donde el usuario selecciona un intervalo de tiempo único de una lista de intervalos de tiempo predefinidos en un ComboBox, con su propiedad DropDownStyle establecida en DropDownList.¿Cómo se maneja la selección múltiple en un control de estilo desplegable?

Ahora, los requisitos han cambiado. Los usuarios necesitarán la capacidad de realizar selecciones múltiples de la lista de intervalos de tiempo.

¿Es posible hacer selecciones múltiples en un ComboBox? ¿Cómo se presentan esas opciones cuando el ComboBox está colapsado? No olvides el aspecto de usabilidad.

¿Existe algún otro control (integrado o de un tercero, preferiblemente un menú desplegable de algún tipo) que pueda satisfacer las necesidades de mis usuarios?

Actualización: engañoso título ...

Respuesta

6

Estoy de acuerdo con @Thomas Owens en el aspecto de usabilidad. Si selecciona varios elementos, el usuario debería poder ver todos los elementos seleccionados. Tal vez un cuadro de lista revisada funcione para esto.

Si todavía tiene corazón puesto en utilizar un tipo de control desplegable, eche un vistazo al kit de herramientas DevExpress editors. Acabo de consultar su demo y hay un control llamado PopupContainerEdit que le permitirá mostrar una lista de elementos con casillas de verificación. Cuando la ventana emergente colapsa, siempre puede mostrar los elementos como una lista delimitada por coma. (aunque esto puede ser inutilizable si la lista es más larga que la caja)

+0

Gracias, echaré un vistazo al PopupContainerEdit. –

+0

No es la respuesta que estaba buscando, pero sigue siendo la mejor. Gracias por el enlace. –

5

Incluso si es posible, me gustaría sugerir cambiar el tipo de entrada. Cuando veo un cuadro desplegable, creo que debo elegir uno. La capacidad de (e incluso de cómo) elegir varias opciones puede eludir a su usuario. Un cuadro de lista estándar podría ser más apropiado, desde el punto de vista de la usabilidad.

+0

Absolutamente. El problema es que tengo espacio vertical limitado ... –

2

No creo posible fuera de la caja sin escribir un montón de código personalizado.

Tendría que estar de acuerdo con Thomas, pero incluso sugeriría posiblemente usar un checklistbox, como imo, es más claro que realizar selecciones múltiples que un cuadro de lista (y no necesita texto de ayuda para seleccionar múltiples , use ctrl)

+0

De acuerdo. Y escribir un montón de código personalizado ... no va a suceder. –

0

Windows.Forms.ComboBox no puede proporcionar selección múltiple.

1

Yo usaría el CheckedListBox en su lugar. Visualiza la selección múltiple y puede seleccionar múltiples entradas. Here es el enlace de Microsoft a la clase.

+0

Un CheckedComboBox sería incluso mejor, pero por desgracia ... –

0

Está buscando ListBox.

+0

No, no lo soy. No tiene suficiente espacio vertical ... –

Cuestiones relacionadas