假设我有一个数字 1234567.89。该数字以 WPF TextBlock 的形式显示。我试图对 Text
属性应用 StringFormat
属性,以便数字像这样显示:
1.234.567,89
正如您所看到的,千位分隔符和小数点分隔符与不变文化规范相反。
我尝试了多种StringFormat
的组合,但都没有成功。这是我最新想出来的:
Text="{Binding SomeBinding, StringFormat={}{0:#'.'##0','00}}"
但输出结果并不正确,而且使用N2
或更改语言环境也不是一个选项。如果可能的话,我想避免使用转换器。
那么,有没有一种通过XAML来更改默认分隔符的方法呢?
StringFormat=N2,ConverterCulture=de
将创建所需的输出,无需任何额外的代码。 - ClemensStringFormat = {} {0:N}
替换为StringFormat = {} {0:#'.'##0','00}
,以免混淆任何人。 - Miloš Ranđelović