我目前遇到了一个有关负数货币的格式问题。
以下是我的情况概述截图:
- 这是我在绑定中使用的StringFormat。(顺便说一句,我尝试过只用 {0:C})
- 如预期
- 当前计算机设置的负数货币数值
- 运行应用程序时的结果
为什么结果不是-0.08$?
您有任何关于我该如何处理的想法吗?
感谢您的时间。
更新:
我尝试使用转换器解决问题,以下是结果:
- 我发现
Thread.CurrentThread.CurrentUICulture
与Thread.CurrentThread.CurrentCulture
不同,所以我在我的App.xaml.cs中进行了修复。不幸的是,结果仍然相同。 - 我尝试通过转换器显示我的值,以查看是否可以调试该问题。实际上接收到的文化参数是正确的,但是它的
CurrentNegativePattern
与Thread.CurrentThread.CurrentCulture
不同。这可能是我遇到该问题的原因。目前,我将在转换器的Convert
方法中使用以下代码:return ((double)value).ToString("C2", Thread.CurrentThread.CurrentCulture);