Ver Mensaje Individual
  #8 (permalink)  
Antiguo 28/08/2009, 06:49
Avatar de Fuzzylog
Fuzzylog
 
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 8 meses
Puntos: 188
Respuesta: Validar textbox numérico en c# para webforms

ok, muy buena la apreciación. Finalmente he conseguido reducir las dos condiciones a una sola. Y he usado el customvalidator 2 que ya tenía, haciendo una pequeña modificación.

Me ha quedado lo siguiente:

al inicio del code-behind:

using System.Text.RegularExpressions;

en el namespace, y dentro de la partial class correspondiente:

//Validación del formato de teléfono usando una regular expression
public static Boolean validarTelefono(String telefono)
{
string expresion = "[0-9]{9}";

if (Regex.IsMatch(telefono, expresion))
{
if (Regex.Replace(telefono, expresion, String.Empty).Length == 0)
{ return true; }
else
{ return false; }
}
else
{
return false;
}
}

y finalmente, para el custom validator:

protected void CustomValidator2_ServerValidate(object source, ServerValidateEventArgs args)
{
String telefono = TextBox3.Text.Trim();
if (!validarTelefono(telefono))
{
CustomValidator2.ErrorMessage = "El número de teléfono debe contener obligatoriamente 9 números";
TextBox3.Text = "Error";
args.IsValid = false;
}
else { }
}

Aún me queda investigar bastante sobre las RegularExpressions, pero por lo que se ve resultan extremádamente útiles en consultas y validaciones.