miércoles, 22 de septiembre de 2010

Programar textbox numerico

Algo bien importante para mantener control de escritura sobre los campos de un form y evitar errores es programar nuestros TextBoxes ya sean Numericos, solo letras, etc. Existen controles con propiedades definidas que nos permiten realizar esta tarea pero hoy le mostrare como hacerlo manualmente, programandolo que solo reciba valores numericos. Veamos:

// para esto utilizamos el evento KeyPress de nuestro textbox.
// Utilizaremos código ascii para identificar cada caracter que sera válido o no

private void txtN1_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)

{
if (((e.KeyChar) < 48 && e.KeyChar != 8) e.KeyChar > 57 )
{
MessageBox.Show("Sólo se permiten Números");
e.Handled = true;
}
}

Explíco:
Este evento maneja un objeto 'e' que es el codigo ascii de cada  tecla que presionamos
cuando tengamos el foco sobre el textbox.
En el if preguntamos lo siguiente;
Si e.KeyChar < 48, diferente de 8 y > 57 
// si buscan la tabla de códigos ascii podran ver que los números del 0 al 9 estan entre los
//codigos ascii 48 y 57 es decir, los códigos ascii de los números del 0 al 9 son del 48 al 57.
// el 8 es el código ascii del BackSpace para en caso de que se necesite borrar se le permita
//al usuario.
Ahí esta, si el código ascii de el caracter que escribes en el textbox no cumple con ningunas
de las condiciones especificadas en el IF, significa que ni es número, ni es la tecla BackSpace
y te muestro un mensaje "Solo se aceptan números" etc.
Recuerden que utilizando los códigos ascii podemos controlar la
escritura sobre nuestros textboxes. Tambien recuerden que todo ese código va dentro de
del evento KeyPress del textbox. Espero le haya sido útil.

5 comentarios:

  1. Muy buen Felix, pero seria un poco mas ilustrativo si colocaras una pantallas de como seria el codigo y como seria el from, recurda que la parte visual ayuda mas a lo que no saben de C#

    Att: Yamayco Sanchez

    ResponderEliminar
  2. Mi hermano!! ok sii... tienes razón. Lo he utilizado en vários post. En las próximas tratare de usar gráficas. Tengo un par de post aquí que no he redactado bien, intentare incluirle gráficas. Gracias por el comentario.

    ResponderEliminar
  3. vaya son tips geniales para c#, pero segun veo esto es del 2010!, ya va para un año, me acabo de suscribir, no vas a actualizar el blog ??

    ResponderEliminar
  4. saludos Miguel, pue si... es un poco viejo. Es que he estado muy ocupado con el trabajo y unos proyecticos pero eso viene. Espero comenzar a actualizar desde hoy. Tengo mucho código para compartir y he aprendido muchas cositas estos ultimosdias que me interesaria publicar. De todos modos, gracias por tomar de tu tiempo y visitar el blog. Nos vemos luego

    ResponderEliminar
  5. christian:

    COMO PROGRAMAR UN TEXTBOX Q ME DE EL RESULTADO EN LETRAS PLIS AAYUDAMNE

    MI CORREO ES chrisselectro92@hotmail.com



    PLISS AYUDEN

    ResponderEliminar

DEJA UN COMENTARIO