Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Você pode comparar dois objetos para determinar a relação, se houver, entre as classes a partir das quais eles são criados. O IsInstanceOfType método da System.Type classe retorna True se a classe especificada herda da classe atual ou se o tipo atual for uma interface suportada pela classe especificada.
Para determinar se um objeto herda da classe ou interface de outro objeto
No objeto que você acha que pode ser do tipo base, invoque o GetType método.
No objeto retornado por System.Type, invoque o método GetType.
Na lista de argumentos para IsInstanceOfType, especifique o objeto que você acha que pode ser do tipo derivado.
IsInstanceOfType retorna
Truese seu tipo de argumento herda do System.Type tipo de objeto.
Exemplo
O exemplo a seguir determina se um objeto representa uma classe derivada da classe de outro objeto.
Public Class baseClass
End Class
Public Class derivedClass : Inherits baseClass
End Class
Public Class testTheseClasses
Public Sub seeIfRelated()
Dim baseObj As Object = New baseClass()
Dim derivedObj As Object = New derivedClass()
Dim related As Boolean
related = baseObj.GetType().IsInstanceOfType(derivedObj)
MsgBox(CStr(related))
End Sub
End Class
Observe o posicionamento inesperado das duas variáveis de objeto na chamada para IsInstanceOfType. O suposto tipo base é usado para gerar a System.Type classe, e o suposto tipo derivado é passado como um argumento para o IsInstanceOfType método.