probar este código de abajo:
string numValue = "500,85";
System.Globalization.CultureInfo culInfo = new System.Globalization.CultureInfo("fr-FR");
decimal decValue;
bool decValid = decimal.TryParse(numValue, System.Globalization.NumberStyles.Number, culInfo.NumberFormat, out decValue);
if (decValid)
{
lblDecNum.Text = Convert.ToString(decValue, culInfo.NumberFormat);
}
Desde que estoy dando un valor de 500,85 voy a asumir que la cultura es el francés y, por tanto, el separador decimal es ",
". Then decimal.TryParse (numValue, System.Globalization.NumberStyles.Number, culInfo.NumberFormat, out decValue); devolverá el valor como 500.85 en decValue. Del mismo modo, si el usuario es inglés, entonces cambie el constructor culInfo.
decimal no almacena en el formato de "500,85". ¿Estás pidiendo un par de decimales? –
@myermian: Bueno, podría hacerlo, dependiendo de la configuración cultural/local. No todos representan los valores decimales de la misma manera. En este ejemplo, '500,85' podría ser equivalente a' 500.85'. –
¿Podría '50.865,85' ser una posibilidad en su cadena? – V4Vendetta