SoloCodigo
CLR: .Net / Mono / Boo / Otros CLR => C# => Mensaje iniciado por: el_rolas en Jueves 29 de Octubre de 2009, 04:58
-
hola, estoy haciendo un formulario con unos textbox, pero quiero que se bloqueen los caracteres especiales, que simplemente cuando presionen las teclas por ejemplo _/[] no aparezca nada, esto es para no tener problemas con el llenado de mi base de datos en mysql, por favor como lo puedo hacer, estoy aprendiendo c#.
-
if ((e.KeyChar >= 48 && e.KeyChar <= 57) || (e.KeyChar >= 97 && e.KeyChar <= 122) || (e.KeyChar >= 65 && e.KeyChar <= 90) || (e.KeyChar == 8))
e.Handled = false;
else
e.Handled = true;
solo pon los caracteres que deseas que se muestren y listo.
-
muchas gracias pero el numero que esta despues del igual dentro del if, es el numero de tecla?
-
Los numeros son el valor ASCII de los caracteres. Saludos
Aqui hay una tabla para que puedas ver los valores:
http://www.portalplanetasedna.com.ar/ascii.htm
-
muchas gracias a los dos
-
una duda, el codigo va dentro del textbox? o dentro de que evento va? o donde va?
por favor se los agradecere mucho
-
Mira como dice le buen amigo Tanke, es un codigo Ascii. lo cual se refiere a que al pulsar una tecla es enviada o no.
Los Tres eventos que se pueden manejar son:
* KeyPress
*KeyUp
*KeyDown
el evento que necesitas es KeyPress y sirve seleccionando el textbox y generando el evento.
prueba generandio el codigo que te puse.
-
y como solucion alternativa:
que tal permitir que el usuario meta lo que quiera, pero luego eliminar tu esos caracteres cuando quiera enviarlos?
-
con el replace:
string A = "HOLA+..";
A = A.Replace("+", "");
saludos