C# ListView将数字显示为货币
我的ListView有问题。我希望将值显示为货币,即C# ListView将数字显示为货币,c#,wpf,C#,Wpf,我的ListView有问题。我希望将值显示为货币,即 £150.02 相反,我得到了 £$150.02 这是我的密码: <GridViewColumn Header="Value" Width="80" DisplayMemberBinding="{Binding value, StringFormat=£{0:C}}" /> 您需要更改控件的语言 this.Language = XmlLanguage.GetLanguage(Thread.CurrentThread.Curr
£150.02
相反,我得到了
£$150.02
这是我的密码:
<GridViewColumn Header="Value" Width="80" DisplayMemberBinding="{Binding value, StringFormat=£{0:C}}" />
您需要更改控件的语言
this.Language = XmlLanguage.GetLanguage(Thread.CurrentThread.CurrentCulture.Name);
你有额外的钱把它拿走
<GridViewColumn Header="Value" Width="80" DisplayMemberBinding="{Binding value, StringFormat={}{0:C}}" />
只需删除
C
即可:
DisplayMemberBinding="{Binding value, StringFormat=£{0}}"
C
-输出特定于语言环境的货币(在您的例子中,这似乎是$
),并按原样输出英镑符号。两个选项:更改区域设置(?)或手动输出(例如,将货币值输出为十进制
,并带有所需前缀)。这是VS2015中的选项吗?我在VS2013中编写的其他项目在运行时显示数据should@ati这自.NET 1.0以来没有发生任何变化。它显示没有数据(空字段)@arti。。。不要删除0
只需删除C
。它应该有用!这不是一个解决方案,而是一个解决方案。正确的解决方案是让货币符号根据当前文化自动提取,这是一个解决方案,特别是我的应用程序将在捷克共和国使用,他们必须将其视为英镑而不是他们的货币。一切取决于你想做什么achieve@arti:您可以按照clemens的建议将区域性显式设置为en Gb。XAML解析器不会将前面的大括号识别为格式字符串的开头。写StringFormat={}{0:C}
来绕过这个问题。@arti:首先,它与VS2015无关。XmlLanguage.GetLanguage(Thread.CurrentThread.CurrentCulture.Name)
使用当前区域性。如果您的系统在美国,它会显示一个$
,在英国,它会显示一个英镑符号。我的是德语,给我看了一个€
符号。它不仅是符号,而且是正确的格式,比如100,00€
,而不是$100.00
。更多细节。那个么你们如何解释这个事实呢?我的系统设置为UK,显示$?不知道。您可以通过Language=xmlanguage.GetLanguage(“en-GB”)代码>