Ver Mensaje Individual
  #2 (permalink)  
Antiguo 19/06/2008, 07:44
mariuciber
 
Fecha de Ingreso: junio-2008
Mensajes: 5
Antigüedad: 15 años, 11 meses
Puntos: 0
Respuesta: Dar Formato a una Columna de un datagrid

Lo puedes hacer con Expresiones regulares.

using System;


namespace EducaLibWeb
{
public class ValidacionesRegulares
{
public ValidacionesRegulares()
{
}



public static string letra_nif(UInt32 dni)
{
string s_letra = "TRWAGMYFPDXBNJZSQVHLCKE";
dni = dni % 23;
s_letra = s_letra[Convert.ToInt16(dni)].ToString();
return s_letra;
}

/// <summary>
/// Valida si una hora es correcta con el formato (HH:MM)
/// </summary>
/// <returns></returns>
public static bool ValidaHora(string hora)
{
string formato = @"^((0)?[1-9]|1\d|2[0-3]):([0-5]\d)$";

System.Text.RegularExpressions.Regex Exp = new System.Text.RegularExpressions.Regex(formato);

if(!Exp.IsMatch(hora))
return false;
return true;
}
/// <summary>
/// Valida si un Movil es correcto
/// </summary>
/// <returns></returns>
public static bool ValidaMovil(string Movil)
{
string formato = "^(9|6){1}[0-9]{8}";//"/9|6\d{8}"; //^\\d{9}$";//"[0-9]{9}"; ^9|6\\d{8}"

System.Text.RegularExpressions.Regex Exp = new System.Text.RegularExpressions.Regex(formato);

if(!Exp.IsMatch(Movil))
return false;
return true;
}
/// <summary>
/// Valida si un Movil es correcto
/// </summary>
/// <returns></returns>
public static bool ValidarMoney (string Money)
{
string formato = "^(-)?\d+(\.\d\d)?$";
System.Text.RegularExpressions.Regex Exp = new System.Text.RegularExpressions.Regex(formato);
if (!Exp.IsMatch(Money))
return False;
return true;
}

/// <summary>
/// Valida si un email es correcto
/// </summary>
/// <returns></returns>
public static bool ValidaEmail(string Email)
{
string formato = "^([\\w-]+\\.)*?[\\w-]+@[\\w-]+\\.([\\w-]+\\.)*?[\\w]+$";

System.Text.RegularExpressions.Regex Exp = new System.Text.RegularExpressions.Regex(formato);

if(!Exp.IsMatch(Email))
return false;
return true;
}


Luego en el DataGrid

//Obtiene la fila editada en el DataGrid
DataRow dr = dataGridContactos.DataSet.Tables[0].Rows[Convert.ToInt32(e.CommandArgument)];
//valida Email
if(dr[9].ToString() != string.Empty && !ValidacionesRegulares.ValidaEmail(dr[9].ToString()))
{
Validador.InsertarMensaje("El email no es valido");
error1=true;
}

//valida movil
if(dr[10].ToString() != string.Empty && !ValidacionesRegulares.ValidaMovil(dr[10].ToString()))
{
Validador.InsertarMensaje("El Movil no es valido");
error2=true;
}



De todas maneras te dejo un enlace de un articulo sobre las Expresiones Regulares
http://www.microsoft.com/spanish/msdn/articulos/archivo/201205/voices/regex.mspx