2013-02-28 94 views
-4

我收到一个“输入字符串的不正确的格式”错误下面提到代码:输入字符串的不正确的格式错误

Convert.ToInt32(TextBox2.ToString()); 
+2

我们应该怎么知道?我们没有解析字符串的值。 – LukeHennerley 2013-02-28 09:50:49

+0

您从文本框中传递什么值?它是否包含小数? – 2013-02-28 09:51:28

+0

这是非常直截了当的,你尝试变成Int32的字符串中的一个或另一个(或两者)不是字符串格式的整数,所以不能转换为整数。 – SpaceBison 2013-02-28 09:52:28

回答

6

而不是TextBox2.ToString()需要TextBox2.Text被解析为整数。您需要使用Text属性来获取TextBox中的文本。

所以下面的检查将失败:

if (Convert.ToInt32(Carton_Qty_Bal) < Convert.ToInt32(TextBox2.ToString())) 
                 ^^^^^^^^^^^^^^^^ 

而且你不必调用ToString的Text属性就像你在你的代码做,因为Text已经是字符串类型。

TextBox1.Text.ToString() 

(你应该看看Int32.TryParse方法更安全整数解析)

+0

感谢吨哈比...它的工作 – Aditya 2013-02-28 09:53:59

+0

@Aditya,不客气 – Habib 2013-02-28 09:54:59

+0

感谢您的建议 – Aditya 2013-02-28 09:56:00

0

我怀疑你的错误是下降到试图解析

Textbox.ToString()

尝试使用TextBox.Text而不是你解析表示文本框对象的字符串。

+0

是的。谢谢卢克 – Aditya 2013-02-28 09:55:21

0

您的代码

if (Convert.ToInt32(Carton_Qty_Bal) < Convert.ToInt32(TextBox2.ToString())) 

不使用文本框的Text财产。

您正在使用TextBox2.ToString(),它返回TextBox类型的字符串表示形式。使用Text属性并将代码更改为TextBox2.Text

但要小心:您应该检查TextBox.Text属性的值以确保有效的数字输入。