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

时间:2015-01-17 09:39:58

标签: c# vb.net visual-studio-express

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

以下代码向返回布尔值的方法发送文本框条目和两个整数,但只要文本框不包含整数,就会在运行时抛出异常(例如155可以,但155.67 isn&# 39; t)的

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

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

如果它有助于原始VB代码:

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

非常感谢

罗布

1 个答案:

答案 0 :(得分:3)

这是您使用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 coure执行相同操作。更多信息:

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