Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

c# Numericupdown to pass a value to an integer

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.

like image 593
112358d Avatar asked Aug 26 '15 01:08

112358d


2 Answers

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);
like image 99
NASSER Avatar answered Oct 04 '22 15:10

NASSER


The issue is that the numeric value of the NumericUpDown control is decimal and you wanted to assign it to a integer type. You should do a TypeCast to assign it. For the same there is a Convert class you can use it like this

int count = Convert.ToInt32(numericUpDown1.Value);
like image 44
Mohit S Avatar answered Oct 04 '22 17:10

Mohit S