2011-08-06 155 views
0

我有一個窗體有一個文本框(說TextBox1)。該字段是字符串類型。VB2008類型拋出異常

在點擊一個按鈕,我有下面的代碼

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

問題是這樣的部分:

If (TextBox1.Text) 

它試圖TextBox1.Text轉換爲Boolean,看是否要進入該塊。你可能的意思是:

If (TextBox1.Text <> "") 
+0

可能是的!我試過這樣的東西'我終於想通了:-) If String.IsNullOrEmpty(TextBox1.Text)Then MsgBox(「TextBox1 Code can not be empty。Enter enter value!」,vbCritical,「Empty TextBox1」)Else field1 = TextBox1.Text',它工作:)謝謝你的時間喬恩! –

+1

@Bhavani:我可能是錯的,但我不認爲*'TextBox.Text'將永遠爲空。 –

相關問題