eso quisiera saber como hacer que en el textbox o datagridview no me permita ingresar tildes y la letra ñ ya sea mayuscula o minuscula
gracias
| ||||
Respuesta: Bloquear "tildes y Ñ o ñ" en un textbox o datagridview Tienes que tener en cuenta que windows funciona contra el servidor. Si quieres hacer el control por carácter ingresado debes hacerlo con javascript. Si quieres hacerlo contra el servidor, tienes una opción engorrosa en la cantidad de cálculo, que aparece descrita aquí: http://www.forosdelweb.com/f29/valid...bforms-730716/ Básicamente cotejar char a char, tienes que definir que quieres que analice para cada char que quieras controlar, es decir if(char='Ñ' || char='ñ' || char='á' || char='Á' ... etc) { //no validar } La otra opción es usar expresiones regulares. De una forma como esta... //Validación del formato de nombre usando una regular expression. OJO. Incluye en la validación [ñáéíóú] y especios en blanco. public static Boolean validarNombre(String nombre) { string expresion = "[a-z]?[ñáéíóú]?[\\s]?"; if (Regex.IsMatch(nombre, expresion)) { if (Regex.Replace(nombre, expresion, String.Empty).Length == 0) { return true; } else { return false; } } else { return false; } } Y para el validator protected void CustomValidator1_ServerValidate(object source, ServerValidateEventArgs args) { //Validación de nombre de persona utilizando una expresión regular string nombre = TextBox1.Text.ToLower().Trim(); if (!validarNombre(nombre)) { TextBox1.Text = "Error"; args.IsValid = false; } else { } } //Si lo que quieres es que no valide ñ ni tildes, tienes que retirar de la expresión regular esa parte. Si quieres que tampoco valide espacios en blanco intermedio, sólo te quedaría así: string expresion = "[a-z]?"; |
| ||||
Respuesta: Bloquear "tildes y Ñ o ñ" en un textbox o datagridview ok bueno especifica mejor es una aplicacion windows ,web , mobile o silverlight?? si es winforms el concepto de la expression regular o de invalidar caracteres acentuados estaria mas ligado al evento de la celda al KeyDown para ser mas especifico y tendrias que validar si tu tecla presionada e invalidarla. si fuera web lo mismo pero con javascript o usando un customvalidator |
| ||||
Respuesta: Bloquear "tildes y Ñ o ñ" en un textbox o datagridview bueno disculpa por ser tan poco especifico.. es en visual c sharp 2005 en winforms la idea es que en el textbox solo queden letras mayusculas sin tilde ni Ñ o ñ y demas expresiones.. lo he intentado mediante un keypress bloqueando tecla por tecla.. en realidad es bastante engorroso... me interesa saber bien como funciona el metodo de expresiones irregulaer.. lo ideal seria dentro de un keypress.. gracias |
| ||||
Respuesta: Bloquear "tildes y Ñ o ñ" en un textbox o datagridview Pues puedes usar esto entonces: http://www.codeproject.com/KB/valida...nprovider.aspx |
| ||||
Respuesta: Bloquear "tildes y Ñ o ñ" en un textbox o datagridview ya he solucionado un poco el problema.. pero el problema es q cuando coloco caracteres como ()//&%$·._... etc. entre medio de una mayuscula o numero lo acepta todo :( este es mi codigo if (Regex.IsMatch(this.textBox1.Text, @"[A-Z0-9]")) { MessageBox.Show(textBox1.Text); //this.txtNombre.Focus(); } else { MessageBox.Show("CARACTER INVALIDO", "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error); } espero ayuda plz OTRA CONSULTA: es necesario que lo haga en el evendo keypress del textbox? Última edición por Dimax; 09/10/2009 a las 09:21 |
| ||||
Respuesta: Bloquear "tildes y Ñ o ñ" en un textbox o datagridview haz un ciclo que testee todos los caracteres que quieres bloquear... ejemplo primero creas un string, en el cual tienes los caracteres que no quieres que aparezcan en el texbox
Código:
espero te sirva la ideastring sCaracteres = "!"#$%&/()= y cualquier caracter que no quieres que aparezca"; despues, haces un ciclo for for (int iCont = 0; iCont < sCaracteres.length; icont++) { // aca haces la validacion de cada caracter comparandolo con el que esta capturado en el evento keypress if (sCaracteres.Substring(iContadorRegistros,1) == (la variable donde capturastes el caracter) { return false; } else { return true; } } } PLCH |
| ||||
Respuesta: Bloquear "tildes y Ñ o ñ" en un textbox o datagridview no me resulta :(... pero el metodo de expresion regular q estaba usando me funciona pero a medias.. como dije solo me funciona con el primer caracter de la palabra.. pero si coloco una Ñ o una tilde en el medio de la palabra ya no funciona no lo pesca Cita: espero ayuda plzif (Regex.IsMatch(this.textBox1.Text, @"[A-Z0-9]")) { MessageBox.Show(textBox1.Text); //this.txtNombre.Focus(); } else { MessageBox.Show("CARACTER INVALIDO", "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error); } OTRA CONSULTA: es necesario que lo haga en el evendo keypress del textbox? creo q solo falta un paso pero no se me ocurre como arreglar la expresión alguna otra ayuda plz? |
| |||
Respuesta: Bloquear "tildes y Ñ o ñ" en un textbox o datagridview yo le colocaria un ExpressionValidator y en ValidationExpression pondria: [a-nA-N]*.|[o-zO-Z]*. o algo asi, nol o prove pero podrias jugar con algo asi, estas cosas funcionan |
| ||||
Respuesta: Bloquear "tildes y Ñ o ñ" en un textbox o datagridview eeee... como que me perdí en las respuestas, lo que quieres es una caja de texto que no permita tildes y tampoco ñ. Pues lo más indicado para este tipo de escenarios son las expresiones regulares, pero si sólo vas a restringir esos caracteres creo que verificando el ascii sería más facil :p Algo así:
Código vb.net:
Puedes convertir este código a c# desde esta web.Ver original Espero te ayude |