Information
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 Constructor (Single)

Initializes a new instance of Decimal to the value of the specified single-precision floating-point number.

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

[SecuritySafeCriticalAttribute]
public Decimal(
	float value
)

Parameters

value
Type: System.Single
The value to represent as a Decimal.

ExceptionCondition
OverflowException

value is greater than MaxValue or less than MinValue.

-or-

value is Single.NaN, Single.PositiveInfinity, or Single.NegativeInfinity.

This constructor rounds value to 7 significant digits using rounding to nearest. This is done even if the number has more than 7 digits and the less significant digits are zero.

The following code example creates several Decimal numbers using the constructor overload that initializes a Decimal structure with a Single value.


// Example of the decimal( float ) constructor.
using System;

class Example
{
   // Get the exception type name; remove the namespace prefix.
   public static string GetExceptionType(Exception ex)
   {
      string exceptionType = ex.GetType().ToString();
      return exceptionType.Substring(
          exceptionType.LastIndexOf('.') + 1);
   }

   // Create a decimal object and display its value.
   public static void CreateDecimal(System.Windows.Controls.TextBlock outputBlock, float value, string valToStr)
   {
      // Format and display the constructor.
      outputBlock.Text += String.Format("{0,-27}",
          String.Format("decimal( {0} )", valToStr));

      try
      {
         // Construct the decimal value.
         decimal decimalNum = new decimal(value);

         // Display the value if it was created successfully.
         outputBlock.Text += String.Format("{0,31}", decimalNum) + "\n";
      }
      catch (Exception ex)
      {
         // Display the exception type if an exception was thrown.
         outputBlock.Text += String.Format("{0,31}", GetExceptionType(ex)) + "\n";
      }
   }

   public static void Demo(System.Windows.Controls.TextBlock outputBlock)
   {

      outputBlock.Text += String.Format("This example of the decimal( float ) " +
          "constructor \ngenerates the following output.\n") + "\n";
      outputBlock.Text += String.Format("{0,-27}{1,31}", "Constructor",
          "Value or Exception") + "\n";
      outputBlock.Text += String.Format("{0,-27}{1,31}", "-----------",
          "------------------") + "\n";

      // Construct decimal objects from float values.
      CreateDecimal(outputBlock, 1.2345E+5F, "1.2345E+5F");
      CreateDecimal(outputBlock, 1.234567E+15F, "1.234567E+15F");
      CreateDecimal(outputBlock, 1.23456789E+25F, "1.23456789E+25F");
      CreateDecimal(outputBlock, 1.23456789E+35F, "1.23456789E+35F");
      CreateDecimal(outputBlock, 1.2345E-5F, "1.2345E-5F");
      CreateDecimal(outputBlock, 1.234567E-15F, "1.234567E-15F");
      CreateDecimal(outputBlock, 1.23456789E-25F, "1.23456789E-25F");
      CreateDecimal(outputBlock, 1.23456789E-35F, "1.23456789E-35F");
      CreateDecimal(outputBlock, 1.0F / 7.0F, "1.0F / 7.0F");
   }
}

/*
This example of the decimal( float ) constructor
generates the following output.

Constructor                             Value or Exception
-----------                             ------------------
decimal( 1.2345E+5F )                               123450
decimal( 1.234567E+15F )                  1234567000000000
decimal( 1.23456789E+25F )      12345680000000000000000000
decimal( 1.23456789E+35F )               OverflowException
decimal( 1.2345E-5F )                          0.000012345
decimal( 1.234567E-15F )           0.000000000000001234567
decimal( 1.23456789E-25F )  0.0000000000000000000000001235
decimal( 1.23456789E-35F )                               0
decimal( 1.0F / 7.0F )                           0.1428571
*/


Silverlight

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

Show:
© 2014 Microsoft