VB2008类型转换异常

时间:2011-08-06 13:32:32

标签: vb.net exception-handling

我有一个带有文本框的表单(比如TextBox1)。该字段是字符串类型。

点击按钮后,我有以下代码

Dim field1 As String

If (TextBox1.Text) Then field1 = TextBox1.Text Else MsgBox("TextBox1 Code can not be empty. Enter proper value!", vbCritical, "Empty TextBox1")

我构建了解决方案并运行它。打开表单时,我没有在TextBox1中输入任何内容。我点击了按钮。它抛出一个异常如下:

InvalidCastException was unhandled
Conversion from string "" to type 'Boolean' is not valid.

任何人都可以指导我如何处理此异常?另外,为什么还要尝试将我的字符串转换为Bool?

1 个答案:

答案 0 :(得分:1)

问题在于这一部分:

If (TextBox1.Text)

它正在尝试将TextBox1.Text转换为Boolean以查看是否进入该区块。你可能意味着:

If (TextBox1.Text <> "")