gpt4 book ai didi

c# - 负货币数 XAML

转载 作者:可可西里 更新时间:2023-11-01 09:15:55 30 4
gpt4 key购买 nike

我的负货币数字的当前格式有点问题。这是恢复我的情况的屏幕截图。

  1. 这就是我在绑定(bind)中使用 StringFormat 的方式。 (顺便说一句,我只试过 {0:C})
  2. 正如预期的那样
  3. 我电脑的当前负数货币设置4.
  4. 我运行应用程序时的结果

alt text

为什么结果不是 -0,08 $?

关于我应该如何进行的任何想法?

感谢您的宝贵时间。

更新:

我尝试用转换器解决问题,结果如下:

  • 我发现 Thread.CurrentThread.CurrentUICultureThread.CurrentThread.CurrentCulture 不同,所以我在 App.xaml.cs 中修复了它。不幸的是,结果相同。
  • 我尝试通过转换器显示我的值,看看是否可以调试问题。事实上,Convert 方法的参数中接收到的文化是可以的,但它的 CurrentNegativePatternThread.CurrentThread.CurrentCulture< 中的不同。这可能就是我遇到这个问题的原因。目前,我将在 Convert 方法中使用:return ((double)value).ToString("C2", Thread.CurrentThread.CurrentCulture);我的转换器。

最佳答案

尝试将 CurrentCulture 更改为 CurrentUICulture:

FrameworkElement.LanguageProperty.OverrideMetadata(
typeof(FrameworkElement),
new FrameworkPropertyMetadata(XmlLanguage.GetLanguage(CultureInfo.CurrentUICulture.IetfLanguageTag))
);

请注意,这可能不会使用您的区域设置。 CultureInfo 对象确实描述了您的区域设置,但是您使用 IetfLanguageTag 所做的是将其提取到特定的文化。该文化没有您对区域设置所做的调整。

或者,您可以查看绑定(bind)的 ConvertCulture 选项。这实际上需要一个 CultureInfo

关于c# - 负货币数 XAML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4060172/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com