none
Disparar evento do TextChanged ao digitar qualquer caracter. RRS feed

  • Pergunta

  • Boa tarde,

    Sou novo em C# e gostaria de uma ajuda para disparar o evento TextChanged ao digitar qualquer carácter, hj ele dispara o evento ao digitar enter.

    Desde já agradeço,

    segunda-feira, 19 de novembro de 2018 19:19

Respostas

  • Olá, André.

    Mesmo sendo um objeto asp, você pode usar eventos onkeydown, onkeypress e onkeyup nele, e se valer de javascript para fazer o tratamento desejado. Pelo que entendi, você só quer impedir digitação via teclado e, para isso, a aplicação não precisa ir ao servidor. Só precisa requisitar ao servidor quando a leitura via código de barras estiver completa.

    No caso do evento TexChanged, não é exatamente o Enter que o dispara, e sim a saída do campo. Ele só reconhece a alteração do campo após este perder o foco, se, é claro, ele conter um valor diferente de quando recebeu o foco.

    Espero ter ajudado. :)

    Att.

    quinta-feira, 6 de dezembro de 2018 17:54

Todas as Respostas

  • Olá, Andre!

       Se você apenas manipular o evento TextChanged, ele já faz isto. Vá nos eventos e dê um duplo click sobre o evento TextChanged. Coloque um breakpoint no início do evento, para conferir se a cada digitação ele está entrando ali. Ao menos este é o comportamento esperado. Ás vezes o evento perde o vínculo com o método a ser chamado. Confira isto também.

    Espero que ajude. Bom trabalho!

    segunda-feira, 19 de novembro de 2018 19:40
  • Bom dia, Rodrigo!

    Fiz o breakpoint e quando digita ele não entra no evento, criei um outro projeto com um campo texto pra testar o evento, e o mesmo comportamento acontece. Acabei esquecendo de comentar, a minha aplicação é web, na web o comportamento do evento é diferente?

    Desde já agradeço!

    terça-feira, 20 de novembro de 2018 10:17
  • Bom dia André, veja se você encontra o evento keypressed do seu campo texto.
    terça-feira, 20 de novembro de 2018 10:33
  • Bom dia,

    Como é Web não tem esse evento, eu preciso fazer uma validação para que o usuário entre com os dados através de um leitor de códigos de barras e impedir a digitação.

    Atenciosamente,

    sexta-feira, 23 de novembro de 2018 12:26
  • Se for web procura verificar se o textbox tem a propriedade AutoPostBasck, caso tenha defina ela como true.

    segunda-feira, 3 de dezembro de 2018 10:38
  • Olá, André.

    Mesmo sendo um objeto asp, você pode usar eventos onkeydown, onkeypress e onkeyup nele, e se valer de javascript para fazer o tratamento desejado. Pelo que entendi, você só quer impedir digitação via teclado e, para isso, a aplicação não precisa ir ao servidor. Só precisa requisitar ao servidor quando a leitura via código de barras estiver completa.

    No caso do evento TexChanged, não é exatamente o Enter que o dispara, e sim a saída do campo. Ele só reconhece a alteração do campo após este perder o foco, se, é claro, ele conter um valor diferente de quando recebeu o foco.

    Espero ter ajudado. :)

    Att.

    quinta-feira, 6 de dezembro de 2018 17:54
  • Boa noite,

    Por falta de retorno essa thread está encerrada.

    Se necessário favor abrir uma nova thread.

    Atenciosamente,

    Filipe B de Castro

    Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    quarta-feira, 26 de dezembro de 2018 22:36
    Moderador