none
Override no ProcessCmdKey para TextBox RRS feed

  • Pergunta

  • Boas,

     

    Amigos gostaria de saber se é possivel  dar um override no ProcessCmdKey  para trocar a tecla tab por enter apenas para o 

    os TextBox

    Bom o código usado para trocar normalmente a qualque tab seria :

     

    Protected Overrides Function ProcessCmdKey(ByRef msg As System.Windows.Forms.Message, ByVal keyData As System.Windows.Forms.Keys) As Boolean
      
      If keyData = Keys.Enter Then
       Me.ProcessTabKey(True)
       Return True
      Else
       Return MyBase.ProcessCmdKey(msg, keyData)
      End If
      
     End Function
    

    tem como ser especifico para os textbox?

    T+

     

     

    • Editado Vanderney Souza sexta-feira, 10 de setembro de 2010 17:32 explicação melhor
    sexta-feira, 10 de setembro de 2010 17:31

Respostas

  • Vanderney,

    Você pode testar o ActiveControl...

    Protected Overrides Function ProcessCmdKey(ByRef msg As System.Windows.Forms.Message, ByVal keyData As System.Windows.Forms.Keys) As Boolean
     
     If keyData = Keys.Enter And Me.ActiveControl is TextBox Then
      Me.ProcessTabKey(True)
      Return True
     Else
      Return MyBase.ProcessCmdKey(msg, keyData)
     End If
     
     End Function
    
    

    At.,


    Rogério de Resende Ohashi | Ohashi.NET (.NET, Security, C#, WinForms, WCF, Workflow, Azure, Windows Phone, Mono)
    • Marcado como Resposta Vanderney Souza sexta-feira, 10 de setembro de 2010 18:41
    sexta-feira, 10 de setembro de 2010 17:45
  •  bom eu fiz o seu modelo usando And Me.ActiveControl is TextBox

    o problema e que está dando o seguinte erro:

    Error 1 'TextBox' is a type and cannot be used as an expression.

    Alguém saberia me ajudar?

     

    t+


    If TypeOf Me.ActiveControl Is TextBox Then
    Lucas
    • Sugerido como Resposta Alan Cossari sexta-feira, 10 de setembro de 2010 18:34
    • Marcado como Resposta Vanderney Souza sexta-feira, 10 de setembro de 2010 18:41
    sexta-feira, 10 de setembro de 2010 18:11

Todas as Respostas

  • Vanderney,

    Você pode testar o ActiveControl...

    Protected Overrides Function ProcessCmdKey(ByRef msg As System.Windows.Forms.Message, ByVal keyData As System.Windows.Forms.Keys) As Boolean
     
     If keyData = Keys.Enter And Me.ActiveControl is TextBox Then
      Me.ProcessTabKey(True)
      Return True
     Else
      Return MyBase.ProcessCmdKey(msg, keyData)
     End If
     
     End Function
    
    

    At.,


    Rogério de Resende Ohashi | Ohashi.NET (.NET, Security, C#, WinForms, WCF, Workflow, Azure, Windows Phone, Mono)
    • Marcado como Resposta Vanderney Souza sexta-feira, 10 de setembro de 2010 18:41
    sexta-feira, 10 de setembro de 2010 17:45
  •  bom eu fiz o seu modelo usando And Me.ActiveControl is TextBox

    o problema e que está dando o seguinte erro:

    Error 1 'TextBox' is a type and cannot be used as an expression.

    Alguém saberia me ajudar?

     

    t+

    • Editado Vanderney Souza sexta-feira, 10 de setembro de 2010 18:04 mellhor explicacao
    sexta-feira, 10 de setembro de 2010 18:03
  •  bom eu fiz o seu modelo usando And Me.ActiveControl is TextBox

    o problema e que está dando o seguinte erro:

    Error 1 'TextBox' is a type and cannot be used as an expression.

    Alguém saberia me ajudar?

     

    t+


    If TypeOf Me.ActiveControl Is TextBox Then
    Lucas
    • Sugerido como Resposta Alan Cossari sexta-feira, 10 de setembro de 2010 18:34
    • Marcado como Resposta Vanderney Souza sexta-feira, 10 de setembro de 2010 18:41
    sexta-feira, 10 de setembro de 2010 18:11
  • Muio Obrigado tanto ao Rogério e Lucas

     

    Fucionou Belezinha

     

    T+

    sexta-feira, 10 de setembro de 2010 18:51