標準通貨形式で括弧の代わりにマイナス記号を使用することはできますか? 質問する

標準通貨形式で括弧の代わりにマイナス記号を使用することはできますか? 質問する

私のプロジェクトには、組み込みの{0:C}通貨形式で通貨を表示しようとする場所がたくさんあります。数値が負の場合、値は括弧で囲まれます。代わりに負の符号を使用するようにします。

私の web.config では culture が設定されておりauto、 に解決されますen-US

{0:C}理想的な解決策は、カルチャの負の符号を表示するグローバル web.config またはその他の設定ですen-USが、それほど素晴らしいものではない他の解決策も検討します。

ベストアンサー1

正しいものを指定する必要がありますNumberFormatInfo.CurrencyNegativePatternおそらく1です。

Decimal dec = new Decimal(-1234.4321);
CultureInfo culture = CultureInfo.CreateSpecificCulture("en-US");
culture.NumberFormat.CurrencyNegativePattern = 1; 
String str = String.Format(culture, "{0:C}", dec);
Console.Write(str);

デモ:http://ideone.com/HxSqT

出力:

-$1,234.43

おすすめ記事