2012-10-05 154 views
4
Public Class EquipmentNode 
'... 
End Class 

Private Sub DoWork() 
Dim node As TreeNode = _contextNode 

If node is EquipmentNode ' Does not work 
if node is TypeOf EquipmentNode ' Does not work 
End Sub 

如何查看節點是否是相同類型。現在,我只是將其轉換並查看結果是否爲空,但我想使用「Is」運算符。Visual Basic - 是否運營商

回答

7

Visual Basic Is Operator,(不像C#'s is operator),並不能告訴你關於對象的類型,而在於是否兩個對象變量指向同一個實際的對象實例。

的是運營商確定兩個對象引用指向同一個對象

這不會告訴你的對象是特定的類型。

要比較的類型,你會使用:

If TypeOf node Is EquipmentNode Then 
+0

啊,好的。我認爲它是一樣的C# – contactmatt

2

在VB中Is operator不 - 因爲is在C#中 - 檢查對象是否是某種類型的,它做同樣的工作作爲C#的ReferenceEquals()