2010-04-23 14 views
5

Al presentar una lista fija de países en un control ComboBox, sin entrada de texto libre, la expectativa del usuario es que si comienzan a detallar el nombre del país, les llevará al nombre de ese país. En cambio, el comportamiento predeterminado es que se mueva al primer elemento en la lista que comienza con ese carácter. Entonces, cuando golpean al segundo personaje del nombre, los lleva al primer país que comienza con esa letra.ComboBox Comportamiento

Por ejemplo, si presiono "S" un montón de veces, me permite desplazarme por todos los países que comienzan con "S" para llegar a Singapur. Si presiono "S", "I", "N", me toma el primer país que comienza con "S", luego el primer país que comienza con "I", luego el primer país que comienza con "N". Prefiero tener "S", "I", "N" llevarme a países que comienzan con "Sin"

¿Hay alguna manera fácil de habilitar este último comportamiento?

+0

Piense dos veces antes de hacer esto. Por desafortunado que sea, es un comportamiento estándar, y cualquiera que haya aprendido cómo funciona en cualquier otro lugar se sentirá frustrado por su sistema. Por ejemplo, sé golpear M 5 veces cada vez que veo un campo de Estado, porque eso mostrará Minnesota. –

+1

Estoy de acuerdo con usted en principio, excepto que mi población de usuarios ha estado usando una aplicación VB durante los últimos diez años que funciona de esa manera. Entonces, lo están esperando. Como viven en la aplicación unas 6-8 horas por día, se acostumbran y se quejan de cómo funciona el resto del mundo. – MattMcKnight

+0

Sin duda, escribir Mi es más rápido que tener que presionar M 5 veces. Microsoft mismo parece mezclarlo. Outlook usa el sistema predeterminado, visual studio el segundo ... – Carra

Respuesta

4

Usted puede obtener esta estableciendo las siguientes propiedades en el cuadro combinado

AutoCompleteMode = Suggest 
AutoCompleteSource = ListItems 
DropDownStyle = DropDownList 

Ahora, no se pueden aflojarse y escribiendo muy despacio ... pero si escribe a una velocidad razonable que va a saltar a lo que necesitan.

Si son lentos, se comportará como usted mencionó

+0

Funciona muy bien, gracias. – MattMcKnight

+0

¿Hay alguna manera de superar el problema de la velocidad? –