René Pacios

/* Overflow My Brain & More */

Un Textbox donde sólo se puedan escribir números

Bueno hoy es una rápida, ya que no tengo mucho time y últimamente ando más liado que la pata de un romano, pero prometo volver a retomar el blog con las mismas ganas que cuando lo empecé. Casualmente me encontraba modificando una aplicación que había hecho hace tiempo,(versión 1.1 del Framework, jeje) , y me he encontrado con el código que os voy a mostrar, que como dice el título, es el típico numericBox donde el usuario sólo puede escribir números..

Private Sub txtNum_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) _
 Handles txtNum.KeyPress

    If Not IsNumeric(e.KeyChar) _
     AndAlso System.Convert.ToByte(e.KeyChar) <> 8 Then   
        e.Handled = True
    End If

End Sub
 

Como podéis ver es bastante simple, el tema de controlar si pulsan un número o el ASCII 8 que es la tecla “del”, ya que de otro modo, no podrían borrar hacia la izquierda. La tecla “Supr”, no es necesario controlarla.

Seguro que estáis pensando que se podría  hacer un nuevo control heredando de la clase Windows.Forms.TextBox, incluso podríamos permitir el uso del separador de decimales, u algún signo para números negativos, evidentemente existe un abanico de posibilidades, tan sólo pretendo mostrar una forma sencilla de controlar lo que un usuario escribe en una caja de texto.

Por otro lado aprovecho para mencionar que con la versión 2.0 apareció el control  MaskedTextBox el cual nos provee de no sólo poder indicar los caracteres que un usuario puede insertar, sino también el formato de estos. Este puede ser de gran utilidad para validar entradas de DNI, Teléfonos, etc. Aunque el comportamiento por defecto de este control es un poco diferente, se basa en una maskara de entrada, y ciertos eventos donde podemos validar si la entrada del usuario cumple con la expresión indicada en la máscara, pero bueno esto es tema de otro post. Sonrisa

 

Nos leemos, René Pacios

Acerca de René

René Pacios es un apasionado de la tecnología, autodidacta, emprendedor, le encanta el desarrollo web, para moviles, aplicaciones, todo aquello que automatice tareas y haga que las máquinas trabajen para él. Es un gran fan de las tecnologías Microsoft, y le encanta estar a la última siempre que el tiempo se lo permite. Siempre quiso ser cantante, pero creo que en esta vida se va a quedar sólo en canta-mañanas

               

Agregar comentario

Loading