【问题标题】:Formatting DataGridColumn With £ Sign Instead of $ Sign使用 £ 符号而不是 $ 符号格式化 DataGridColumn
【发布时间】:2016-03-11 11:55:26
【问题描述】:

我有一个存储ValueDataGridTextColumn,我希望该值显示为£123.456.789。到目前为止,我已经这样做了;

<DataGridTextColumn Header="Value" Binding="{Binding Value, StringFormat=C}"/>

然而,这会导致一列看起来像这样;

虽然我希望 , 成为 .,但这里的主要问题是我希望这是 £ 而不是 $。如何更改该列以使其显示井号而不是美元符号?

【问题讨论】:

  • £123.456.789 有效吗?
  • 如果您希望货币格式影响WindowUserControl 中的所有内容,那么只需将此xml:lang="en-GB" 添加到您的Window XAML 中,如下所示:<Window xml:lang="en-GB"/>
  • @kyle,我的错,当然不是,漫长的一天!

标签: c# wpf datagrid string-formatting culture


【解决方案1】:

尝试使用 ConverterCulture:

<DataGridTextColumn Header="Value" Binding="{Binding Value, ConverterCulture='en-GB', StringFormat=C}"/>

【讨论】:

  • 这对我来说几乎是完美的,唯一的问题是我还有123,456,789.00。你知道删除.00 的简单方法吗?
  • 您可以硬编码英镑符号,而不是使用语言环境和货币。如果你这样做,那么你可以使用格式化来删除逗号。 <DataGridTextColumn Header="Value" Binding="{Binding Value, StringFormat=£0.00}"/> 如果要保留货币格式,则需要考虑使用 NumberFormatInfo 变量并删除逗号分隔。
猜你喜欢
  • 1970-01-01
  • 2022-11-10
  • 1970-01-01
  • 2019-03-14
  • 2018-12-21
  • 1970-01-01
  • 1970-01-01
  • 2015-02-07
  • 1970-01-01
相关资源
最近更新 更多