尝试验证用户没有输入“0”错误:无法将int隐式转换为字符串

时间:2014-04-05 22:45:28

标签: c#

我包含截图,我不确定如何确保用户没有输入“0”。屏幕截图显示了我过去的hw中的一个示例,其中有效,但这一次,我得到“无法将int类型隐式转换为字符串错误”

好的,所以我还不能发布图片,所以这是我的代码:

 if (int.TryParse(textBoxDivisor.Text, out divisorInt))
        {
            //correct
        }
        else
        {
            MessageBox.Show("Please enter a valid divisor!");
            return;
        }

        if (textBoxDivisor.Text = 0)
        {
            MessageBox.Show("Cannot divide by 0");
            return;
        }
        else

等。错误是行:if(textBoxDivisor.Text = 0)“0”带有错误消息的红色下划线。

3 个答案:

答案 0 :(得分:3)

if (int.TryParse(textBoxDivisor.Text, out divisorInt))
        {
            if (divisorInt != 0)
            {
            //correct
            }
            else
            {
                 // blah blah blah
            }
        }
        else
        {
            MessageBox.Show("Please enter a valid divisor!");
            return;
        }

答案 1 :(得分:0)

在您需要检查

时尝试分配==
 try
      {
    if (int.Parse(textBoxDivisor.Text) == 0)
            {
                MessageBox.Show("Cannot divide by 0");
                return;
            }
        } 
    catch (FormatException)
      {
        MessageBox.Show("Unable to convert '{0}'.", textBoxDivisor.Text);
      }

答案 2 :(得分:0)

你在if条件下遇到问题,应该是:

if (textBoxDivisor.Text == "0")

希望这有帮助。