Visual Basic - 是运算符

时间:2012-10-05 20:04:52

标签: vb.net

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

如何查看节点是否为同一类型。现在我只是将它投射并查看结果是否为null,但我想使用“Is”运算符。

2 个答案:

答案 0 :(得分:7)

Visual Basic Is Operator(与C#'s is operator不同)并没有告诉您对象的类型,而是两个对象变量是否引用相同的实际对象实例。

  

Is运算符确定两个对象引用是否引用同一对象

这不会告诉您对象是否是特定类型。

要比较类型,您可以使用:

If TypeOf node Is EquipmentNode Then

答案 1 :(得分:2)

VB中的Is operator没有 - 作为C#中的is - 检查一个对象是否属于某种类型,它与C#的ReferenceEquals()完成相同的工作。

相关问题