NumberFormatInfo.CurrencyDecimalDigits Property
Gets or sets the number of decimal places to use in currency values.
Namespace: System.Globalization
Assembly: mscorlib (in mscorlib.dll)
Property Value
Type: System.Int32The number of decimal places to use in currency values. The default for InvariantInfo is 2.
| Exception | Condition |
|---|---|
| ArgumentOutOfRangeException | The property is being set to a value that is less than 0 or greater than 99. |
| InvalidOperationException | The property is being set and the NumberFormatInfo object is read-only. |
The CurrencyDecimalDigits property is used with the "C" standard format string without a precision specifier in numeric formatting operations. It defines the default number of fractional digits that appear after the decimal separator. This value is overridden if a precision specifier is used. For more information, see Standard Numeric Format Strings.
The following example demonstrates the effect of changing the CurrencyDecimalDigits property.
using System; using System.Globalization; class NumberFormatInfoSample { public static void Main() { // Gets a NumberFormatInfo associated with the en-US culture. NumberFormatInfo nfi = new CultureInfo( "en-US", false ).NumberFormat; // Displays a negative value with the default number of decimal digits (2). Int64 myInt = -1234; Console.WriteLine( myInt.ToString( "C", nfi ) ); // Displays the same value with four decimal digits. nfi.CurrencyDecimalDigits = 4; Console.WriteLine( myInt.ToString( "C", nfi ) ); } } /* This code produces the following output. ($1,234.00) ($1,234.0000) */
Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.