Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/300.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 输入字符串格式错误_C# - Fatal编程技术网

C# 输入字符串格式错误

C# 输入字符串格式错误,c#,C#,我收到的输入字符串格式不正确,错误代码如下: Convert.ToInt32(TextBox2.ToString()); 您需要将TextBox2.Text解析为整数,而不是TextBox2.ToString。您需要使用Text属性从TextBox获取文本 因此,以下检查将失败: if (Convert.ToInt32(Carton_Qty_Bal) < Convert.ToInt32(TextBox2.ToString()))

我收到的输入字符串格式不正确,错误代码如下:

Convert.ToInt32(TextBox2.ToString());
您需要将TextBox2.Text解析为整数,而不是TextBox2.ToString。您需要使用Text属性从TextBox获取文本

因此,以下检查将失败:

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

您应该研究更安全的整数解析方法

我怀疑您的错误在于试图解析

Textbox.ToString

请尝试使用TextBox.Text,否则您将解析表示TextBox对象的字符串。

您的代码

if (Convert.ToInt32(Carton_Qty_Bal) < Convert.ToInt32(TextBox2.ToString()))   
不使用TextBox的Text属性

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


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

我们怎么知道?我们没有您解析的字符串的值。您正在从文本框传递什么值?它包含小数吗?它非常简单,实际上,您要转换为Int32的一个或另一个字符串或两个字符串都不是字符串格式的整数,因此无法转换为整数。@RB在二次读取时是的。。。我可以发布一个答案来代替synical:PNext time当您出现此错误时,创建一个临时变量并通过设置断点使用调试器检查它是非常有用的。或者使用自动手表。这段代码会很快显示问题:var-toConvert=TextBox2.ToString;var测试=Convert.ToInt32toConvert;。
if (Convert.ToInt32(Carton_Qty_Bal) < Convert.ToInt32(TextBox2.ToString()))