【发布时间】:2016-02-26 15:51:56
【问题描述】:
嗨,我只想在文本框中输入 1 到 5 作为单位成绩 我使用此代码:
Private Sub TextBox16_TextChanged(sender As Object, e As EventArgs) Handles TextBox16.TextChanged
If TextBox16.Text >= 5 Then
TextBox16.clear()
MsgBox("Unit Grades Only From 1 to 5")
End If
End Sub
结束类
出现错误:
Microsoft.VisualBasic.dll 中出现“System.InvalidCastException”类型的未处理异常
附加信息:从字符串“”到类型“Double”的转换无效。
【问题讨论】:
-
a) 给你的控件起有意义的名字——你被命名为“Child16”还是类似的名字? b) 打开选项 strict - 将文本与数字进行比较是无效的,因为字符串不是数字。与其监视每一次击键,不如在完成后点亮并检查所有输入,然后单击“确定”或其他任何内容。你不需要因为错字而责骂他们
-
如果他们只应该输入 1-5(整数),请使用 NumericUpDown
-
If Integer.Parse(TextBox16.Text) >= 5 Then
标签: vb.net