Get integer from Textbox

2020-02-06 03:20发布

问题:

I am very new to C# and this question might sound very stupid. I wonder how I'm going get the integer(user's input) from the textBox1 and use it in if else statement?

Please give some examples

回答1:

You need to parse the value of textbox.Text which is a string to int value. You may use int.TryParse, or int.Parse or Convert.ToInt32.

TextBox.Text property is of string type. You may look at the following sample code.

int.TryParse

This will return true if the parsing is successful and false if it fails.

int value;

if(int.TryParse(textBox1.Text,out value))
{
//parsing successful 
} 
else
{
//parsing failed. 
}

Convert.ToInt32

This may throw an exception if the parsing is unsuccessful.

int value = Convert.ToInt32(textBox1.Text);

int.Parse

int value = int.Parse(textBox1.Text);

Later you can use value in your if statement like.

if(value > 0)
{
}
else
{
}


回答2:

Try with this:

int i = int.Parse(textbox1.Text);


回答3:

    int value = 0;
    if (Int32.TryParse(textbox.Text, out value))
    {
       if (value == 1)
       {
          ... //Do something
       }
       else if (value == 2)
       {
          ... //Do something else
       }
       else
       {
          ... //Do something different again
       }
   }
   else
   {
       ... //Incorrect format...
   }


回答4:

Try this

string value = myTextBox.Text;
int myNumber = 0;

if(!string.IsNullOrEmpty(value))
{
    int.TryParse(value, out myNumber);
    if(myNumber > 0)
    {
         // do stuff
    }
}


回答5:

I would use:

        try 
        {
            int myNumber = Int32.Parse(myTextBox.Text);
        }
        catch (FormatException ex)
        {
           //failed, not a valid number in string
            throw;
        }

or

        int myNumber = 0;
        if (Int32.TryParse(myTextBox.Text, out myNumber))
        { 
            //success do something with myNumber
        }