Xamarin.iOS货币EditText格式

时间:2019-11-29 12:49:13

标签: c# xamarin.ios currency formatter

我在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);

0 个答案:

没有答案