C#正确解析文本框中的整数

C# parsing integer from text box correctly

我正在通过转换我以前用 Visual Basic 编写的简单 Windows 表单应用程序来学习 C#(在 Visual Studio Express 2013 for Windows Desktop 中)。

以下代码将一个文本框条目和两个整数发送到一个 returns 布尔值的方法,但只要文本框不包含整数(例如 155 就可以,但 155.67 不是)。

if (!(rangeOK(int.Parse(cmTextBox.Text), 50, 250))) return false;

我已经尝试使用 TryParse 来解决这个问题,但是尽管尝试了很多在线提示(以及此处其他人的问题),我还是无法理解我应该如何去做。

如果对原始 VB 代码有帮助:

If Not (rangeOK(Val(cmTextBox.Text), 50, 250)) Then Return False

非常感谢

罗布

你是这样使用的 TryParse:

int result; // does not need to be initialized
if (int.TryParse(cmTextBox.Text, out result))
{
  if (!(rangeOK(result, 50, 250)))
    return false;
  // todo
} else
{
  // process error
}

更多信息在这里:

http://msdn.microsoft.com/en-us/library/f02979c7%28v=vs.110%29.aspx

祝你好运!

更新

如果您想使用非整数,当然可以对 double.TryParse 执行相同的操作。更多信息在这里:

http://msdn.microsoft.com/en-us/library/994c0zb1%28v=vs.110%29.aspx