Jump to content

Conflito entre autocomplete e tecla enter


softklin
 Share

Recommended Posts

Boas pessoal.

Estou a fazer uma aplicação que recorre a autocompletes para acelerar a introdução de dados. Numa certa textbox, quero fazer a introdução de tags/etiquetas. Essas etiquetas vêm da base de dados, e funcionam correctamente. O meu problema é que tinha um pequeno override no evento keyress, cuja intenção era detectar a tecla enter, e com isto colocar o texto numa lista e apagar a textbox.

O problema começou quando activei o autocomplete, porque agora o enter é ignorado, e já não faz a acção que pretendo. O autocomplete funciona bem, mas o enter deixou de funcionar. Deixo o código e propriedades definidas:

        private void interceptTagText(object sender, KeyPressEventArgs e)
        {
            // não permitir espaços
            if (e.KeyChar == ' ')
            {
                // emitir um aviso, não interessa para este caso particular
                e.Handled = true;
            }
            // tecla enter
            else if (e.KeyChar ==(char) 13)
            {
                addTag(txtTag.Text);
                e.Handled = true;
            }

            System.Diagnostics.Debug.WriteLine(e.KeyChar);
        } 

        private void addTag(String tag)
        {
            if (!lstTags.Items.Contains(tag))
                lstTags.Items.Add(tag);

            txtTag.Text = String.Empty;
        }

Nessa texbox, as propriedades que alterei foram:

AutoCompleteMode = Suggest

AutoCompleteSource = CustomSource

Penso que seja o autocomplete que "agarra" o evento antes da minha função. Alguma forma de dar a volta a isto?

Cumps.

Nick antigo: softclean | Tens um projeto? | Wiki P@P

Ajuda a comunidade! Se encontrares algo de errado, usa a opção "Denunciar" por baixo de cada post.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.