在 UWP 上使用 CurrencyFormatter 正确格式化货币

Properly format currency using CurrencyFormatter on UWP

我想使用 CurrencyFormatter 根据货币设置价格格式,但结果字符串出乎意料。在下面的示例中,我希望生成的字符串为 ₩123,456:

var currencyFormat = new CurrencyFormatter("KRW"); //, new[] { "ko-KR" }, "KR");
var formatted = currencyFormat.Format(123456); // ₩123456

使用 "old-fashioned" 方式,返回预期结果:

var formatted = 123456.ToString("C", new CultureInfo("ko-KR")); // ₩123,456

所以问题是:CurrencyFormatter 省略分组字符是否有原因?是否有解决此问题的方法?

您可以使用 IsGrouped 属性 来设置是否对货币值的整数部分进行分组。试试这个,对你有帮助;

currencyFormat.IsGrouped = true;