Disable writing in the combobox

Ol.
Estou a evitar de usar popupmenu, Existe forma de evitar que o utilizador escreva na combobox?

Rui

Why do you use a Combobox if you disable writing??? That is a sure fire way to annoy your users …

Markus Winter, because I like the layout of the combobox.

in the keydown event, you could return true.

And users expect to be able to type in a ComboBox.

Markus Winter,
i know that. but how can I filter the content they write to avoid writing errors that cause freezing the app?

[quote=182854:@Rui Branco]Markus Winter,
i know that. but how can I filter the content they write to avoid writing errors that cause freezing the app?[/quote]
In that case, you should parse what the user types and throw away any invalid entries/characters.

But seriously, if you don’t want the user to type, don’t use a combobox - use a popupmenu. It’s not just us saying this, these are interface guideline standards for all three platforms.

Another option is to create your own control. Below is an example of a container control that uses a popup menu and textfield to act as one control.

you would then have more control over how the text field is used.

Rui, concordo com o pessoal em relao ao uso correto. Mas se for mesmo o caso, eu costumo chamar um mtodo que verifica se o que foi digitado realmente est presente na lista. algo bem simples. Mas no impede o usurio de digitar.

Adelar,

Qual o melhor mtodo para verificar?
Eu estou a usar algo assim mas no funciona muito bem. A app por defeito guarda o ultimo objeto selecionado e quando abro a app novamente vou ler o ultimo objeto e envio para a combobox, mas o meu cdigo de verificao s funciona se eu for l selecionar de novo.

For f as Integer = 0 To ComboBox15.ListCount -1 If ComboBox15.List(f) = ComboBox15.text Then //existe else //no existe End If Next

Eu uso praticamente o mesmo cdigo, com pouca variao… Eu coloco no LostFocus do Combo. E pelo que voc falou, se voc l o objeto e envia para o combo, significa que est correto, concorda ? Eu s me preocupo em verificar, quando existe um registro novo, ou quando uma alterao… Meus registros esto ligados ao banco de dados sempre.

Eu coloquei em lostfocus mas est sempre a dizer que no existe, mas realmente existe porque eu seleciono o item.