【问题标题】:Show currency in gridview in European Format以欧洲格式在 gridview 中显示货币
【发布时间】:2011-09-27 10:37:04
【问题描述】:

我在 asp.net 中的 gridview 有一列以欧元格式显示货币,即 89.483,00

我知道如何格式化字符串,但不确定如何在行数据绑定事件中获取货币数据并对其进行修改并发送回 gridview。

适用于欧元格式的字符串格式为 as;

String.Format("{0:0.0,0}", temp1) // here temp1 would hold the non-Euro format currency data

【问题讨论】:

  • 如果你有正确的文化那么它只是String.Format("{0:C}", temp1); 使用的文化是什么?
  • 我知道 string.format.. 请阅读我的问题
  • 我是否正确地阅读了您遇到的问题是在 Bind 上获取数据并对其进行格式化,而不是制作字符串?如果是这种情况,您能否显示您在 gridview 和行数据绑定事件中拥有的内容。如果不是……忽略这个,还为时过早。

标签: c# .net asp.net visual-studio gridview


【解决方案1】:

您是否知道您可以为网站设置文化,例如在 web.config 中,不必担心对每个字符串都这样做?

http://msdn.microsoft.com/en-us/library/bz9tc508.aspx

【讨论】:

  • 是的!什么文化适合欧洲国家?
  • 我不认为欧洲有一致的数字格式。例如,在我脑海中,我知道丹麦和瑞典有不同的序数格式。
  • 我不知道细节,但如果你的用户来自所有这 3 个国家,你有检测用户来自哪个国家的策略吗?还是该网站始终使用相同的语言/相同的文化特定设置?
  • 网站采用相同的文化特定设置
  • 我会选择一种文化,这种文化似乎可以提供您想要的所有设置,例如德语或法语。如果您确实需要一种混合了日期和数字格式的自定义文化,而这在现实国家中是不存在的,您可以按照这篇文章来制作:msdn.microsoft.com/en-us/library/ms172469.aspx
【解决方案2】:

我不确定这是否适合你。

您可以创建用于显示的特定数字格式

decimal currval = 89483.00M;
NumberFormatInfo ninfo = CultureInfo.CreateSpecificCulture("en-GB").NumberFormat;
// change as you require
ninfo.CurrencyDecimalSeparator=",";
ninfo.CurrencyGroupSeparator=".";
//you can also set the currency symbol 
string curr = currval.ToString("C", ninfo);

这应该让你得到货币和数字

【讨论】:

    猜你喜欢
    • 2021-12-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-18
    • 1970-01-01
    相关资源
    最近更新 更多