public static Boolean esDecimal(TextBox txtBox, string nombreCampo = "Opcional", Boolean mostrarMensaje = false)
{
string cadena = txtBox.Text;
decimal numero;
if (cadena == "")
return true;
if(!comaYPuntoCorrectos(cadena))
{
if (mostrarMensaje)
{
MessageBox.Show("El valor del campo " + nombreCampo + " debe ser un número", "Error en los datos de entrada", MessageBoxButtons.OK);
}
return false;
}
cadena.Replace('.', ',');
if (Decimal.TryParse(cadena, out numero))
{
if (!cadena.Contains(" "))
{
return true;
}
}
if (mostrarMensaje)
{
MessageBox.Show("El valor del campo " + nombreCampo + " debe ser un número", "Error en los datos de entrada", MessageBoxButtons.OK);
}
return false;
}