假设我有一个号码1234567.89。该数字显示在 WPF TextBlock 中。我正在尝试申请StringFormat
归因于Text
属性,以便数字显示如下:
1.234.567,89
正如您所看到的,千位分隔符和小数分隔符与不变区域性规范相反。
我尝试过设置多种组合StringFormat
,但没有成功。这是我最新想到的:
Text="{Binding SomeBinding, StringFormat={}{0:#'.'##0','00}}"
但输出不正确。另外,使用N2
或者改变文化不是一个选择。如果可能的话,我想避免使用转换器。
那么,有没有办法通过XAML更改默认分隔符呢?
你不必change文化。只需使用String.Format具有指定的文化(de-DE 应该没问题):
string output = String.Format(new CultureInfo("de-DE"), "{0:N}", yourDoubleValue);
Output: 9.164,32
如果您想在 XAML 中执行此操作,您可以尝试:
Text="{Binding SomeBinding, StringFormat={}{0:N}, ConverterCulture=de-DE}"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)