我在C#(Xamarin iOS)中遇到货币格式化问题。我有控制EditTexst文本值的转换器。但它无法正常工作。例如: 正确的格式-11 222.33 当我尝试删除小数部分时,它具有这样的值-11 222.30-这是正常的 但是如果光标在小数点分隔符(点)之后,并且我将其删除,则得到这样的结果1 122 230.00
如何跳过要点并删除某个字符? 也许您有更正确的货币格式化程序。
var formatter = new NSNumberFormatter
{
NumberStyle = NSNumberFormatterStyle.Decimal,
DecimalSeparator = separator,
MaximumFractionDigits = 2,
};
/// Пытаемся распарсить
var number = formatter.NumberFromString(newStr);
/// Меняем поведения форматтера
formatter.GroupingSeparator = " ";
以及根据文化设置分隔符的转换器
decimal money = System.Convert.ToDecimal(value);
NumberFormatInfo numberFormat = (NumberFormatInfo)culture.NumberFormat.Clone();
numberFormat.NumberGroupSeparator = " ";
return money.ToString("N2", numberFormat);