Visual Basic Foro

Programación => Visual Basic .NET / C# => Mensaje iniciado por: ale_xi en Marzo 21, 2017, 11:01:45 am

Título: textbox solo mayuscula en vb.NET
Publicado por: ale_xi 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
Título: Re:textbox solo mayuscula en vb.NET
Publicado por: NEBIRE 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
Título: Re:textbox solo mayuscula en vb.NET
Publicado por: Luffy 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