In Windows Forms, NumericUpDown control is used to provide a Windows spin box or an up-down control which displays the numeric values. Or in other words, NumericUpDown control provides an interface which moves using up and down arrow and holds some pre-defined numeric value. In NumericUpDown control, you can set a number of decimal places which will display in the up-down control using DecimalPlaces Property. The default value of this property is 0. You can set this property in two different ways:
1. Design-Time: It is the easiest way to set the decimal places in the NumericUpDown as shown in the following steps:
-
Step 1: Create a windows form as shown in the below image:
Visual Studio -> File -> New -> Project -> WindowsFormApp -
Step 2: Next, drag and drop the NumericUpDown control from the toolbox on the form as shown in the below image:
-
Step 3: After drag and drop you will go to the properties of the NumericUpDown and set the decimal places in the NumericUpDown as shown in the below image:
Output:
2. Run-Time: It is a little bit trickier than the above method. In this method, you can set a number of decimal places which will display in the NumericUpDown control programmatically with the help of given syntax:
public int DecimalPlaces { get; set; }
The value of this property is of System.Int32 types, which represents the number of decimal places to display in the up-down control. It will throw an ArgumentOutOfRangeException if the value of this property is less than 0 or greater than 99. The following steps show how to set the decimal place in the NumericUpDown dynamically:
-
Step 1: Create a NumericUpDown using the NumericUpDown() constructor is provided by the NumericUpDown class.
// Creating a NumericUpDown NumericUpDown n = new NumericUpDown();
-
Step 2: After creating NumericUpDown, set the DecimalPlaces property of the NumericUpDown provided by the NumericUpDown class.
// Setting the Decimal Places n.DecimalPlaces = 2;
-
Step 3: And last add this NumericUpDown control to the form using the following statement:
// Adding NumericUpDown // control on the form this.Controls.Add(n);
Example:
using
System;
using
System.Collections.Generic;
using
System.ComponentModel;
using
System.Data;
using
System.Drawing;
using
System.Linq;
using
System.Text;
using
System.Threading.Tasks;
using
System.Windows.Forms;
namespace
WindowsFormsApp44 {
public
partial
class
Form1 : Form {
public
Form1()
{
InitializeComponent();
}
private
void
Form1_Load(
object
sender, EventArgs e)
{
// Creating and setting the
// properties of the labels
Label l1 =
new
Label();
l1.Location =
new
Point(348, 61);
l1.Size =
new
Size(215, 25);
l1.Text =
"Example"
;
l1.Font =
new
Font(
"Bodoni MT"
, 16);
this
.Controls.Add(l1);
Label l2 =
new
Label();
l2.Location =
new
Point(242, 136);
l2.Size =
new
Size(103, 20);
l2.Text =
"Select value:"
;
l2.Font =
new
Font(
"Bodoni MT"
, 12);
this
.Controls.Add(l2);
// Creating and setting the
// properties of NumericUpDown
NumericUpDown n =
new
NumericUpDown();
n.Location =
new
Point(386, 130);
n.Size =
new
Size(126, 26);
n.Font =
new
Font(
"Bodoni MT"
, 12);
n.Minimum = 1800;
n.Maximum = 3000;
n.Increment = 1;
n.DecimalPlaces = 2;
// Adding this control
// to the form
this
.Controls.Add(n);
}
}
}
Output: