Windows apps
Collapse the table of content
Expand the table of content
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

Decimal Implicit Conversion (UInt64 to Decimal)

Converts a 64-bit unsigned integer to a Decimal.

This API is not CLS-compliant. 

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

public static implicit operator decimal (
	ulong value


Type: System.UInt64
A 64-bit unsigned integer.

Return Value

Type: System.Decimal
A Decimal that represents the converted 64-bit unsigned integer.

The following code example converts UInt64 values to Decimal numbers using the UInt64 to Decimal conversion. This conversion is implicit in C#, but requires the op_Implicit operator in Visual Basic and C++. Implicit conversions to Decimal use other methods in these languages.

// Example of the implicit conversion from ulong to decimal.
using System;

class Example
   const string formatter =

   // Convert the ulong argument and display the decimal value.
   public static void DecimalFromUInt64(System.Windows.Controls.TextBlock outputBlock, ulong argument)
      decimal decValue;
      int[] bits;

      // Display the decimal and its binary representation.
      decValue = argument;
      bits = decimal.GetBits(decValue);

      outputBlock.Text += String.Format(formatter, argument, decValue,
          bits[3], bits[2], bits[1], bits[0]) + "\n";

   public static void Demo(System.Windows.Controls.TextBlock outputBlock)
      outputBlock.Text += String.Format(
          "This example of the implicit conversion from ulong " +
          "to decimal generates the \nfollowing output. It " +
          "displays the decimal value and its binary " +
          "representation.\n") + "\n";
      outputBlock.Text += String.Format(formatter, "ulong argument",
          "decimal value", "bits[3]", "bits[2]",
          "bits[1]", "bits[0]") + "\n";
      outputBlock.Text += String.Format(formatter, "--------------",
          "-------------", "-------", "-------",
          "-------", "-------") + "\n";

      // Convert ulong values and display the results.
      DecimalFromUInt64(outputBlock, ulong.MinValue);
      DecimalFromUInt64(outputBlock, ulong.MaxValue);
      DecimalFromUInt64(outputBlock, 0xFFFFFFFFFFFF);
      DecimalFromUInt64(outputBlock, 123456789123456789);
      DecimalFromUInt64(outputBlock, 1000000000000000);

This example of the implicit conversion from ulong to decimal generates the
following output. It displays the decimal value and its binary representation.

      ulong argument        decimal value   bits[3]  bits[2]  bits[1]  bits[0]
      --------------        -------------   -------  -------  -------  -------
                   0                    0  00000000 00000000 00000000 00000000
18446744073709551615 18446744073709551615  00000000 00000000 FFFFFFFF FFFFFFFF
     281474976710655      281474976710655  00000000 00000000 0000FFFF FFFFFFFF
  123456789123456789   123456789123456789  00000000 00000000 01B69B4B ACD05F15
    1000000000000000     1000000000000000  00000000 00000000 00038D7E A4C68000


Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0

XNA Framework

Supported in: Xbox 360, Windows Phone OS 7.0

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.

Community Additions

© 2016 Microsoft