Truco: Solo letras en los TexTbox (Windows Forms) – VB y CSharp
Hay ocaciones que en nuestras aplicaciones debemos controlar lo que el USUARIO deberia escribir en los TextBox… recuerden que esas personitas son experto para hacer que nuestras aplicaciones den un error y mas en los campos que solo debe ir TEXTO en ves de numero… por ello aqui les dejo este pequeño truquillo.
Por cierto para que funcione deben codificar el evento KeyPress del TextBox.
En Visual Basic:
Private Sub txtPruebaTexto_KeyPress(ByVal sender As Object, _ ByVal e As System.Windows.Forms.KeyPressEventArgs) _ Handles txtPruebaTexto.KeyPress If Char.IsLetter(e.KeyChar) Then e.Handled = False ElseIf Char.IsControl(e.KeyChar) Then e.Handled = False ElseIf Char.IsSeparator(e.KeyChar) Then e.Handled = False Else e.Handled = True End If End Sub
En Visual C#:
private void txtPruebaTexto_KeyPress(object sender, KeyPressEventArgs e) { if (Char.IsLetter(e.KeyChar)) { e.Handled = false; } else if (Char.IsControl(e.KeyChar)) { e.Handled = false; } else if (Char.IsSeparator(e.KeyChar)) { e.Handled = false; } else { e.Handled = true; } }
Categorías:.net, Codigos VB y CSharp, Todas las Categorias, Visual Basic 2005, Visual C# 2005
CSharp, Trucos, VB

















hola muchas gracias por publicar este procedimiento. soy nueva programadora en visual basic 6 cliente/servidor y realmente me cuesta encontrar respuesta en la web…
de nada Paula estoy para serviles…
Soy estudiante de Ing. en Sistemas y te estoy muy agradecido por tu pagina, me ha servido muchisimo, no sabes como estaba buscando una ayuda asì porque tenia un programita de tarea que necesitaba protejer para que el usuario no introdujera numeros o caracteres donde no debìa.Muchas gracias y espero que sigas mostrando mas trucos que son de tanta ayuda.
Hola Francisco Javier: no debes agradecerme nada…
la idea de esos trucos y del resto de los articulos es para aprender aun mas sobre lo ultimo en Tecnologia y en codigo
me alegra que te alla sido de mucha utilidad y ten por seguro que habran mas trucos como este publicados aqui
Saludos,
Alexander Jimenez
Blog: http://alexjimenez.wordpress.com
Web: http://alexjimenez.info
gracias por el aporte, me fue de mucha ayuda..
algun codigo para validar los numeros de serie???
grande maestro, queria lo mismo pero para numeros, excelente aporte, Gracias!!!!
COMO PUEDO CREAR REPORTES DE TODO UNA TABLA DE ALUMNOS Q TENGO EN REPORTVIEWER MEDIANTE CODIGO FUENTE MAN AYUDAME PS PORFA JOSE LUIS
Y no pueden clocar, si se puede, con Visual C++?Gracias
Hola Alexander soy estudiante de ingenieria quisiera saber si enun textbox se pudiera encontrar algo referente a aceptar un solo punto. Esto es debido a que en un textbox la maestra me puso una serie de puntos ………. asi y el programa marco error al querer sumar puntos con digitos.
buenas buenas
gracias por el truquito man
sigue publicando cosas asi
Yo apenas estoy entrando en el mundo de csharp y la verdad estoy maravillado (:
hola son buenos todos lo comentario asi que no qda mas que decir que
Buenisimo.
necesito que alguien me ayude, yo soy nuevo en programacion visual studio 2008, y necesito hacer una aplicacion tipo ventana con botones texbox y txt
y para kuando lo kieras ke solo acepte numeros?????
`pss aki taaaa..
If Char.IsNumber(e.KeyChar) Then
e.Handled = False
ElseIf Char.IsControl(e.KeyChar) Then
e.Handled = False
Else
e.Handled = True
End If
Tengo una duda,
estoy programando una pagina en asp.net con codigo en c#; y he colocado un taxtbox al que quiero que solo acepte letras,
el problema es que no se como acceder al evento key_press,
el unico evento que puedo encontrar es el de textboxChanged,
me podrias ayudar? soy principiante
Gracias
Que tal Alex, oye mi buen tengo un problemilla al querer conectarme desde el programa de Visual Basic 2005 a la base de datos que diseñe en el Sql Server me manda este mensaje : “Al conectar a SQL Server 2005, el error se puede producir porque la configuración predeterminada de SQL Server no admite conexiones remotas. (provider: Proveedor de canalizaciones con nombre, error: 0 – No hay ningún proceso en el otro extremo de la canalización.)”, hace un par de dias estaba trabajando bien y ahora ya no que pudo haber pasado y sobre todo como puedo resolver este pinky error…
Muchas gracias EXCELENTE FORO
Gracias a todos por visitar mi blog… perdonen si me he tardado en responder he estado algo lejano del internet
Enrique:
Has probado con cambiar la cadena de conexión
Te explico:
Por lo general ese error surge cuando estas intentando hacer una resolución de nombre, es decir, en ves de llamarlo (local)\SQLExpress ó .\SQLExpress lo estarías llamando MiNOMBREPC\SQLExpress por lo que el intenta buscar dentro de la red ese servidor así sea tu propia maquina.
Formas de Resolverlo:
1. Cambia el nombre del servidor en tu cadena de conexión es decir en ves de usar el nombre de la maquina podrías utilizar esta frase (LOCAL) ya que hará referencia a la maquina donde corre tu aplicación
2. Ir al Configurador de Superficie de SQL Server 2005 y habilitar las canalizaciones de conexiones remotas sea por nombre o por IP y por que no pueden ser ambas.
Por lo general eso es lo que he hecho cuando me surgen esos errores quizás exista una mejor forma pero aun no la conozco
Saludos,
Alexander Jimenez
Blog: http://alexjimenez.wordpress.com
Hola alexander tengo la misma duda que Enrique espero y me puedas ayudar…
Tengo una duda,
estoy programando una pagina en asp.net con codigo en c#; y he colocado un taxtbox(solo acepta numeros, lo hice con un script) cada que el usuario teclee un numero se hagan automaticamente una serie de operaciones con los numeros que este pulsando.
el problema es que no se como acceder al evento key_press,
el unico evento que puedo encontrar es el de textboxChanged,
me podrias ayudar? soy principiante
Gracias
Alex.
Muchas gracias por el ejemplo en C# de captura me fue de mucha ayuda!!
oye me podrias ayudar a ver como se hace para filtrar un datagrid ejemplo: si tengo panama cuba colombia mejico USA canada como campo y cada uno de estos campo tengan tres ciudades diferentes
registradas en el datagrid lo que yo quisiera es consultar solo las de un pais en un combobox si pongo panama en el combobox solo quiero que me aparesca las ciudades de panama en el datagrid. gracias
para todos los programdores de VB.NET este es mi coreo ilepilep@hotmail.com para intercambiar informacion
lO QUE QUIERE HACER ES UNA CONSULTA ESPECIFICA ? YO TENGO CODIGO QUE TE PODRIA AYUDAR SI QUIERES ME AGREGAS AL MESSEGER PARA HABLAR DEL TEMA Y ASI NOS AYUDAMOS MUTUAMENTE YA QUE YO TAMBIEN TENGO UNA DUDAS
ilepilep@hotmail.com
Private Sub TextClave_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextClave.KeyPress
If Char.IsLetter(e.KeyChar) Then
e.Handled = True
ElseIf Char.IsControl(e.KeyChar) Then
e.Handled = True
ElseIf Char.IsSeparator(e.KeyChar) Then
e.Handled = True
Else
e.Handled = False
End If
End Sub
DE ESTA MANERA NO DEJA QUE INGRESESE LETRAS JAJA PERO EL DETALLE ESQ PERMITE INGRESAR SIMBOLOS COMO (+ – ; / ?) ETC..
Hola Alex, estaria de lujo si publicaras estas validaciones pero para aplicaciones tipo web, ya que los eventos son diferentes a las de tipo windows. De antemano te agradezco la aportacion. Saludos cordiales.
A las validaciones que me refiero en mi mensaje anterior, son a las de solo aceptar valores numericos en un texbox en una aplicacion tipo web para C#. Ya que en este tipo de aplicacion solo contamos con el evento TextChanged y no se cuenta con un KeyPress, y es ahi en donde se presentan los problemas, personalmente hablando. Gracias por tus muy buenas aportaciones.
Saludos…………
he perdon pero alguien me puede decir como hago que un texybox no acepte mas de 6 valores osea dentro !! que no pase de 6 letras oh numero sin codigos!!!
ha es ne C#.net solo tengo 16 años y ya me estan dando los examenes de la microsoft ^.^
hola me podrias colaborar con la configuracion de una barra de harramientas en visual scharp no se como lograr que cuando le de clik al boton nuevo me llame una nuevo formulario en la aplicacion,
gracias
Hola, me llamo Vanessa. Tengo una duda,
estoy programando una pagina en asp.net con codigo en c#; y he colocado un textbox al que quiero que cuando aprete o teclee ENTER realize una búsqueda.
El problema es que C# en ASP .Net el unico evento que puedo encontrar es el de textbox1_TextChanged, no existe el Textbox1_keyPress, por lo que algunas funciones o metodos están limitados para este evento textbox1_TextChanged.
me podrias ayudar a saber como cuando pulse la tecla ENTER mi textbox haga la búsqueda? Es soy principiante, Gracias… y calificame en mi página, porfis…
quisinera saber cuando se usa un evente y para q se usa
quisisera q me mansdes truquitos esq mi profe es muy tranq
figo_1986_12@hotmail.com
porfa quisiera q me mandes unos manuales pero q sean precisos y rapidos
para aprender porfavor soy el mismo figo
quisiera mejorar en visual vasic.net
necesito ayuda
:
quisiera saver como relacionar un control con un eevento
quisinera saber cuando se usa un evente y para q se usa
quisisera q me mansdes truquitos esq mi profe es muy tranq
mandame unos manual por fa
figo_1986_12@hotmail.com
Ofi compa me sirvio mas que bien
Saludos desde Panama
hola, escribo para agradeer por estas ayudas y por darnos a conocer algunas cosas que no comprendemos.
hola no te inmaginas las gracias que te doy por ese truco, sabes busque y busque por toda la web y los codigo como que no los dan del todo bien y no sabia q hacer de verdad gracias
buena pagina y felicitaciones amigo por el aporte pero una pregunta como hago para que me vote un mensaje para que al usuario se pa que esta tecleando una letra y no un numero.
Genial tu codigo, ahorita estoy haciendo sofware me sirvio de gran ayuda lo de mi erea lo contrario,
que escribe solo numero y no letras gracias estoy mil acradecido con ud
attt Cusco-Peru
te saludo Machupichu
muy bueno!! graciasssss por el aporte
chevere tu web…!!!!!
Nose si pudieras enviarme algunos Manuales de C Sharp y si tubieras tu propio manual de trucos de este lenguaje te estaria muy agradecido
Te confieso que me saco de apuros y de una enorme preucupacion !!!! THEN YOU!!! BYE………
quisiera validar una text box, q solo entrenn letras y q se pueda retroceder y/o dejar espacios….gracias
men, que buen aporte, gracias me ah sido de gran utilidad jeje, gracias que sigan asi esos aportes
buenas alex soy estudiante de informatica y tengo una duda con respectoa visual basic 2008 necesito saber como hago para pasar de un textbox a otro textbox usando el teclado. espero me ayudes
Gracias x los códigos, me ayudaron mucho
grax amigo, tu codigo fue de mucha ayuda…….
Muy bien solo que no valida los caracteres º y ª
De vdd grax esta pagina me sirvio de mucho, gracias x tus codigos, fueron de gran ayuda, salu2
GRACIASSSSSSSSSSSSSSSSS…. esto era lo que estaba buscando
Hola, Muy buen aporte.
Tengo un problema: Me dice “no se ha declarado el nombre de ‘e’”
Que hago??
Gracias
Soy programador,
gracias me sirvio para ahorar tiempo,
llege hasta tu blog porque comence a explorar el mundo hacking(sql-inyection), y encontre un error gravisimo en mi software y tu codigo lo soluciono. bye
pd: el que necesite ayuda me informa y lo ayudare.
hola soy estudiante en el cecytem y voy en cuartol semestre la verdad estoy empezando en este programa y te doy las gracias por tu pagina la verdad ia le estoy empezandoa entender jajaja
GRACIAS DE VERDAD NO PODIA ENCONTRAR EL CODIGO PARA LIMITAR SOLO LETRAS O NUMEROS, BENDITOS FOROS Y PARA Q SOLO ESCRIBA NUMEROS SOLO CAMBIA (LETTER A NUMER) GRAX.
3 años de haberse publicado y aun es util, muchas gracias por el codigo
hola, para lo que se le complican con el tema de ingresos de dato no aceptados al usuario, utilizen como codigo expresiones regulares, en internet ahy muchas y las pueden armar en funcion a lo que deseen que el usuario no ingrese, exiten pagina que puedes probar esa expresiones regulares en online que pueden probar si la armaron bien y para el caso de c# validen esa expresiones con la herramienta errorprovider. de esa forma ustede evitaran que se realizen acciones de almacenado o lo que sea con ingresos no aceptable a su programacion.
espero que le haya servido