InvariantInfo Property

NumberFormatInfo.InvariantInfo Property

[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]

Gets the default read-only NumberFormatInfo object that is culture-independent (invariant).

Namespace:  System.Globalization
Assembly:  mscorlib (in mscorlib.dll)

'Declaration
Public Shared ReadOnly Property InvariantInfo As NumberFormatInfo

Property Value

Type: System.Globalization.NumberFormatInfo
The default read-only NumberFormatInfo object that is culture-independent (invariant).

This property does not change, regardless of the current culture.

The following example displays the default property values of the InvariantInfo object.


Imports System.Globalization
Imports System.Text


Class Example


   Public Shared Sub Demo(ByVal outputBlock As System.Windows.Controls.TextBlock)

      ' Gets the InvariantInfo.
      Dim myInv As NumberFormatInfo = NumberFormatInfo.InvariantInfo

      ' Gets a UnicodeEncoding to display the Unicode value of symbols.
      Dim myUE As New UnicodeEncoding(True, False)
      Dim myCodes() As Byte

      ' Displays the default values for each of the properties.
      outputBlock.Text &= "InvariantInfo:" & vbCrLf
      outputBlock.Text += String.Format("Note: Symbols might not display correctly,") & vbCrLf
      outputBlock.Text += String.Format("therefore, Unicode values are included.") & vbCrLf
      outputBlock.Text += String.Format(ControlChars.Tab + "CurrencyDecimalDigits" + ControlChars.Tab + ControlChars.Tab + "{0}", myInv.CurrencyDecimalDigits) & vbCrLf
      outputBlock.Text += String.Format(ControlChars.Tab + "CurrencyDecimalSeparator" + ControlChars.Tab + "{0}", myInv.CurrencyDecimalSeparator) & vbCrLf
      outputBlock.Text += String.Format(ControlChars.Tab + "CurrencyGroupSeparator" + ControlChars.Tab + ControlChars.Tab + "{0}", myInv.CurrencyGroupSeparator) & vbCrLf
      outputBlock.Text += String.Format(ControlChars.Tab + "CurrencyGroupSizes" + ControlChars.Tab + ControlChars.Tab + "{0}", myInv.CurrencyGroupSizes(0)) & vbCrLf
      outputBlock.Text += String.Format(ControlChars.Tab + "CurrencyNegativePattern" + ControlChars.Tab + ControlChars.Tab + "{0}", myInv.CurrencyNegativePattern) & vbCrLf
      outputBlock.Text += String.Format(ControlChars.Tab + "CurrencyPositivePattern" + ControlChars.Tab + ControlChars.Tab + "{0}", myInv.CurrencyPositivePattern) & vbCrLf
      myCodes = myUE.GetBytes(myInv.CurrencySymbol)
      outputBlock.Text += String.Format(ControlChars.Tab + "CurrencySymbol" + ControlChars.Tab + ControlChars.Tab + ControlChars.Tab + "{0}" + ControlChars.Tab + "(U+{1:x2}{2:x2})", myInv.CurrencySymbol, myCodes(0), myCodes(1)) & vbCrLf
      outputBlock.Text += String.Format(ControlChars.Tab + "NaNSymbol" + ControlChars.Tab + ControlChars.Tab + ControlChars.Tab + "{0}", myInv.NaNSymbol) & vbCrLf
      outputBlock.Text += String.Format(ControlChars.Tab + "NegativeInfinitySymbol" + ControlChars.Tab + ControlChars.Tab + "{0}", myInv.NegativeInfinitySymbol) & vbCrLf
      outputBlock.Text += String.Format(ControlChars.Tab + "NegativeSign" + ControlChars.Tab + ControlChars.Tab + ControlChars.Tab + "{0}", myInv.NegativeSign) & vbCrLf
      outputBlock.Text += String.Format(ControlChars.Tab + "NumberDecimalDigits" + ControlChars.Tab + ControlChars.Tab + "{0}", myInv.NumberDecimalDigits) & vbCrLf
      outputBlock.Text += String.Format(ControlChars.Tab + "NumberDecimalSeparator" + ControlChars.Tab + ControlChars.Tab + "{0}", myInv.NumberDecimalSeparator) & vbCrLf
      outputBlock.Text += String.Format(ControlChars.Tab + "NumberGroupSeparator" + ControlChars.Tab + ControlChars.Tab + "{0}", myInv.NumberGroupSeparator) & vbCrLf
      outputBlock.Text += String.Format(ControlChars.Tab + "NumberGroupSizes" + ControlChars.Tab + ControlChars.Tab + "{0}", myInv.NumberGroupSizes(0)) & vbCrLf
      outputBlock.Text += String.Format(ControlChars.Tab + "NumberNegativePattern" + ControlChars.Tab + ControlChars.Tab + "{0}", myInv.NumberNegativePattern) & vbCrLf
      outputBlock.Text += String.Format(ControlChars.Tab + "PercentDecimalDigits" + ControlChars.Tab + ControlChars.Tab + "{0}", myInv.PercentDecimalDigits) & vbCrLf
      outputBlock.Text += String.Format(ControlChars.Tab + "PercentDecimalSeparator" + ControlChars.Tab + ControlChars.Tab + "{0}", myInv.PercentDecimalSeparator) & vbCrLf
      outputBlock.Text += String.Format(ControlChars.Tab + "PercentGroupSeparator" + ControlChars.Tab + ControlChars.Tab + "{0}", myInv.PercentGroupSeparator) & vbCrLf
      outputBlock.Text += String.Format(ControlChars.Tab + "PercentGroupSizes" + ControlChars.Tab + ControlChars.Tab + "{0}", myInv.PercentGroupSizes(0)) & vbCrLf
      outputBlock.Text += String.Format(ControlChars.Tab + "PercentNegativePattern" + ControlChars.Tab + ControlChars.Tab + "{0}", myInv.PercentNegativePattern) & vbCrLf
      outputBlock.Text += String.Format(ControlChars.Tab + "PercentPositivePattern" + ControlChars.Tab + ControlChars.Tab + "{0}", myInv.PercentPositivePattern) & vbCrLf
      myCodes = myUE.GetBytes(myInv.PercentSymbol)
      outputBlock.Text += String.Format(ControlChars.Tab + "PercentSymbol" + ControlChars.Tab + ControlChars.Tab + ControlChars.Tab + "{0}" + ControlChars.Tab + "(U+{1:x2}{2:x2})", myInv.PercentSymbol, myCodes(0), myCodes(1)) & vbCrLf
      myCodes = myUE.GetBytes(myInv.PerMilleSymbol)
      outputBlock.Text += String.Format(ControlChars.Tab + "PerMilleSymbol" + ControlChars.Tab + ControlChars.Tab + ControlChars.Tab + "{0}" + ControlChars.Tab + "(U+{1:x2}{2:x2})", myInv.PerMilleSymbol, myCodes(0), myCodes(1)) & vbCrLf
      outputBlock.Text += String.Format(ControlChars.Tab + "PositiveInfinitySymbol" + ControlChars.Tab + ControlChars.Tab + "{0}", myInv.PositiveInfinitySymbol) & vbCrLf
      outputBlock.Text += String.Format(ControlChars.Tab + "PositiveSign" + ControlChars.Tab + ControlChars.Tab + ControlChars.Tab + "{0}", myInv.PositiveSign) & vbCrLf
   End Sub 'Main 
End Class 'SamplesNumberFormatInfo


' This code produces the following output.
'
' InvariantInfo:
' Note: Symbols might not display correctly,
' therefore, Unicode values are included.
'         CurrencyDecimalDigits           2
'         CurrencyDecimalSeparator        .
'         CurrencyGroupSeparator          ,
'         CurrencyGroupSizes              3
'         CurrencyNegativePattern         0
'         CurrencyPositivePattern         0
'         CurrencySymbol                         (U+00a4)
'         NaNSymbol                       NaN
'         NegativeInfinitySymbol          -Infinity
'         NegativeSign                    -
'         NumberDecimalDigits             2
'         NumberDecimalSeparator          .
'         NumberGroupSeparator            ,
'         NumberGroupSizes                3
'         NumberNegativePattern           1
'         PercentDecimalDigits            2
'         PercentDecimalSeparator         .
'         PercentGroupSeparator           ,
'         PercentGroupSizes               3
'         PercentNegativePattern          0
'         PercentPositivePattern          0
'         PercentSymbol                   %       (U+0025)
'         PerMilleSymbol                  %       (U+2030)
'         PositiveInfinitySymbol          Infinity
'         PositiveSign                    +


Windows Phone OS

Supported in: 8.1, 8.0, 7.1, 7.0

Windows Phone

Show:
© 2017 Microsoft