c# Convert.ToString(Convert.ToInt32(...)) 输入字符串的格式不正确。

窗体中有3个textBox,分别为txtPrice,txtpNum,txtAllPrice,现在要计算总价,但总是出现错误,请问是什么原因?具体代码如下:txtAllPr... 窗体中有3个textBox,分别为txtPrice, txtpNum, txtAllPrice,现在要计算总价,但总是出现错误,请问是什么原因?具体代码如下:
txtAllPrice.Text = Convert.ToString(
Convert.ToInt32(txtPrice.Text) *
Convert.ToInt32(txtPNum.Text));

错误提示:
输入字符串的格式不正确。
将一个字符串转换为DateTime时,先分析该字符串以获取日期,然后再将每个变量放置到DateTime对象中。

请问为什么会出现这样的错误提示?为什么会出现DateTime??谢谢!!
展开
 我来答
hahaigotit
2011-12-26 · TA获得超过2542个赞
知道答主
回答量:235
采纳率:0%
帮助的人:126万
展开全部
您好,这个问题应该是你这块代码存在问题导致。
当您从textbox里获取的text是空的时候,Convert.toInt32()函数就会报错。这个错误就是格式错误,至于为什么会出现DateTime,因为默认你输入的text为日期格式,这个你不必管。

解决办法是你需要对输入进行验证,保证是数字后再调用Convert.toint32然后再乘法计算。

祝生活愉快,望采纳。
408662910
2011-12-26 · TA获得超过132个赞
知道答主
回答量:122
采纳率:0%
帮助的人:74.2万
展开全部
你的错误可能是同一个程序中,别的窗体报出来的

int Num= Convert.ToInt32(txtPNum.Text);
int Price=Convert.ToInt32(txtPrice.Text) ;
txtAllPrice.Text=(Price*Num).ToString();
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友26f7ff7
2011-12-26
知道答主
回答量:74
采纳率:0%
帮助的人:17.3万
展开全部
分开来写试试
int sum = Convert.ToInt32(txtPrice.Text) * Convert.ToInt32(txtPNum.Text);

txtAllPrice.Text = sum .tostring();
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
祈鹅尚店
2011-12-27 · TA获得超过150个赞
知道小有建树答主
回答量:347
采纳率:100%
帮助的人:157万
展开全部
要保证文本框内的是数字啊,还有最好是加上Trim 去掉前后空格。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
haoluogaga
2011-12-26 · TA获得超过2378个赞
知道小有建树答主
回答量:1265
采纳率:0%
帮助的人:1018万
展开全部
把你的错误 截图放上来看看。你这个应该不是这段代码的错误。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式