c# Numericupdown to pass a value to an integer

112358d picture 112358d · Aug 26, 2015 · Viewed 42.2k times · Source

I'm having a problem passing a numericupdown value into an integer.

private void button5_Click(object sender, EventArgs e)
{
    int count = numericUpDown1.Value;
    updateCount(count);
}

So, what I want to do is pass the value of the numericupdown value into an integer named count and then pass the value into a method that updates a table in my database.

I just started programming C# lately and can't seem to understand some documentation.

Answer

NASSER picture NASSER · Aug 26, 2015

NumericUpDown.Value returns decimal so you need to round and convert to integer

Use this,

int count = Convert.ToInt32(Math.Round(numericUpDown1.Value, 0));
updateCount(count);

You can convert directly to the integer type if you have set Increment to integer (no decimal points) number, otherwise it is safe to round first before conversion.

So without round

int count = Convert.ToInt32(numericUpDown1.Value);
updateCount(count);