# NumberFormatInfo.PercentDecimalDigits Property

## Definition

Gets or sets the number of decimal places to use in percent values.

``````public:
property int PercentDecimalDigits { int get(); void set(int value); };``````
``public int PercentDecimalDigits { get; set; }``
``member this.PercentDecimalDigits : int with get, set``
``Public Property PercentDecimalDigits As Integer``

#### Property Value

Int32

The number of decimal places to use in percent values. The default for InvariantInfo is 2.

#### Exceptions

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 PercentDecimalDigits 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).
Double myInt = 0.1234;
Console::WriteLine( myInt.ToString( "P", nfi ) );

// Displays the same value with four decimal digits.
nfi->PercentDecimalDigits = 4;
Console::WriteLine( myInt.ToString( "P", nfi ) );
}

/*
This code produces the following output.
12.34 %
12.3400 %
*/
``````
``````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).
Double myInt = 0.1234;
Console.WriteLine( myInt.ToString( "P", nfi ) );

// Displays the same value with four decimal digits.
nfi.PercentDecimalDigits = 4;
Console.WriteLine( myInt.ToString( "P", nfi ) );
}
}

/*
This code produces the following output.

12.34 %
12.3400 %
*/
``````
``````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 [Double] = 0.1234
Console.WriteLine(myInt.ToString("P", nfi))

' Displays the same value with four decimal digits.
nfi.PercentDecimalDigits = 4
Console.WriteLine(myInt.ToString("P", nfi))

End Sub

End Class

'This code produces the following output.
'
'12.34 %
'12.3400 %
``````

## Remarks

The PercentDecimalDigits property is used with the "P" 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.