NumberFormatInfo.CurrencyDecimalDigits
Property
Definition
Gets or sets the number of decimal places to use in currency values.
public int CurrencyDecimalDigits { get; set; }
The number of decimal places to use in currency values. The default for InvariantInfo is 2.
The property is being set to a value that is less than 0 or greater than 99.
The property is being set and the NumberFormatInfo object is read-only.
Examples
The following example demonstrates the effect of changing the CurrencyDecimalDigits property.
using namespace System;
using namespace System::Globalization;
int main()
{
// Gets a NumberFormatInfo associated with the en-US culture.
CultureInfo^ MyCI = gcnew CultureInfo( "en-US",false );
NumberFormatInfo^ nfi = MyCI->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)
*/
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)
*/
Imports System
Imports System.Globalization
Class NumberFormatInfoSample
Public Shared Sub Main()
' Gets a NumberFormatInfo associated with the en-US culture.
Dim nfi As NumberFormatInfo = New CultureInfo("en-US", False).NumberFormat
' Displays a negative value with the default number of decimal digits (2).
Dim myInt As Int64 = - 1234
Console.WriteLine(myInt.ToString("C", nfi))
' Displays the same value with four decimal digits.
nfi.CurrencyDecimalDigits = 4
Console.WriteLine(myInt.ToString("C", nfi))
End Sub 'Main
End Class 'NumberFormatInfoSample
' This code produces the following output.
'
' ($1,234.00)
' ($1,234.0000)
Remarks
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.