Autor Tema: textbox solo mayuscula en vb.NET  (Leído 2035 veces)

0 Usuarios y 1 Visitante están viendo este tema.

ale_xi

  • Bytes
  • *
  • Mensajes: 30
  • Reputación: +3/-1
    • Ver Perfil
textbox solo mayuscula en vb.NET
« en: Marzo 21, 2017, 11:01:45 am »
Hola a todos.

alguien me podria decir como puedo hacer para que un text box solo sea mayuscula

saludos

NEBIRE

  • Kilobyte
  • **
  • Mensajes: 57
  • Reputación: +7/-1
    • Ver Perfil
Re:textbox solo mayuscula en vb.NET
« Respuesta #1 en: Marzo 21, 2017, 05:28:47 pm »
En el evento Validate (Validating), puedes hacer las gestiones que tratan de asegurar que el contenido de un control de entrada del usuario es como se espera que sea, o bien es el momento de modificarlo como toque...

El código es tan sencillo como esto:
Código: (VB) [Seleccionar]
Private Sub TextBox1_Validating(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles TextBox1.Validating
        TextBox1.Text = TextBox1.Text.ToUpper ' lo convierte a mayúsculas.
End Sub

El evento Validating, ocurre cuando un control pierde el foco en favor de otro. Si por ejemplo tras meter un texto se debe pulsar un botón, justo cuando pulsa el botón y antes de cambiar el foco al botón, se produce dicho evento... ...esto es más eficaz que hacerlo continuamente cada vez que el texto cambia (como sucedería en el evento "Changed").

En el ejemplo (usando el evento validating), si acontece algo que no debe permitirse, puede devolverse 'cancelar', en el argumento e, tras informar al usuario del asunto...
También es útil si resultare que no hay ningún botón y deba ser cambiado por el usuario (si la operación fuera algo más compleja), aquí un código de ejemplo:

Código: (VB) [Seleccionar]
Private Sub TextBox1_Validating(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles TextBox1.Validating
        Dim k As UInt32
        Dim chr() As Char = TextBox1.Text.ToCharArray
        Dim charsInvalidos As String = "abcdefghijklmnñopqrstuvwxyzáéíóúü"

        For k = 0 To chr.GetLength(0) - 1
            If (charsInvalidos.Contains(chr(k)) = True) Then
                MsgBox("Cambie la letra '" & chr(k) & "' a mayúsculas, no se permiten minúsculas " & vbNewLine & "( Y de paso cambie el resto de letras minúsculas que existan).")
                e.Cancel = True
                Exit For '
            End If
        Next

        'TextBox1.Text = TextBox1.Text.ToUpper
 End Sub
« última modificación: Marzo 21, 2017, 05:48:19 pm por NEBIRE »

Luffy

  • Kilobyte
  • **
  • Mensajes: 90
  • Reputación: +4/-2
  • Desarrollar es el arte de crecer no de crear.
    • Ver Perfil
Re:textbox solo mayuscula en vb.NET
« Respuesta #2 en: Junio 04, 2017, 10:58:00 pm »
En .net los textbox ya tienen una propiedad para esto, buscala

Enviado desde mi AX600 mediante Tapatalk