c# Windows 8应用程序和转换文本框为整型
本文关键字:文本 整型 转换 Windows 应用程序 | 更新日期: 2023-09-27 18:12:35
我正在尝试制作BMI计算器,我在这行代码上得到invalidcastexception。
int heightInchToFoot = (12 * Convert.ToInt32(heightFtBox)) + Convert.ToInt32(heightInchBox);
我已经将输入范围设置为highightftbox和hightinchbox,这两个都是文本块,所以我不知道为什么会发生这种异常。有人能帮我吗?
您可能应该使用TextBlock的Text属性来获取内容。试一试:
int heightInchToFoot = (12 * Convert.ToInt32(heightFtBox.Text)) + Convert.ToInt32(heightInchBox.Text);
忘记Convert
类的存在。它的方法接受object
参数,有效地克服了类型检查。
如果您使用int.Parse
(或int.TryParse
用于本地错误处理)对数值进行解析,则当您试图传递UI小部件而不是字符串时,编译器会捕获您。正如Mark Peters指出的,您想要的字符串是小部件的Text
属性。
numerictype .Parse
函数也接受一个可选参数来控制转换的区域设置。