2011-11-21 66 views
0

我正在檢查如果邊框的子屬性未設置爲無或等於給定元素,但每當我運行該程序時,都會將其設置爲沒有什麼和崩潰。這裏是我的代碼:未將對象引用設置爲對象的實例:子屬性

If Not Me.Child.Equals(Nothing) Then ... 
If Me.Child.Equals(value) Then ... 

兩者都出現錯誤。我該怎麼做才能通過這些線?同樣在C#中,它看起來像這樣:

if(this.Child != null) ... 
if (this.Child != value) ... 

但是這一次它不會給出錯誤。那麼我做錯了什麼?

回答

3

如果Child沒有任何內容(或null),那麼試圖調用其上的Equals方法將是一個錯誤。您的C#代碼爲空檢查做什麼的VB版本將是

If Not Me.Child Is Nothing Then 
    ... 
End If 
+0

...或者「如果Me.Child IsNot Nothing」。 –

2

你在做什麼錯了就是調用一個方法'等於'不存在的對象;您無法在空對象上運行任何方法(甚至Equals)。

解決你的問題,你有正確的一般方法 - 請檢查對象是否存在:

If Not Me.Child Is Nothing Then ... 

在C#中,如果你試圖用

if (this.Child.Equals(null)) 
會發生同樣的錯誤

這是您的初始基本語句的C#版本。

相關問題