Partilhar via


Expressão do tipo '<typename1>' nunca pode ser do tipo '<typename2>'

Uma expressão TypeOf... Is testa uma variável de referência do objeto para um tipo de dados que ela não pode conter.

Em alguns casos, o compilador pode determinar que um teste TypeOf... Is somente poderá falhar, por exemplo se não houver nenhuma relação de herança entre duas classes.

O código a seguir pode gerar este tipo de erro.

Dim refVar as System.Windows.Forms.Form

If TypeOf refVar Is System.Array

End If

Como Form e Array são tipos totalmente não relacionados, o compilador pode determinar que a expressão TypeOf... Is retorna False para qualquer valor de refVar.

ID de erro: BC31430

Para corrigir este erro

  • Teste a variável para um tipo de dados realista, ou remova o teste TypeOf... Is completamente.

Consulte também

Tarefas

Como: Determine que tipo refere-se de uma variável de objeto para

Referência

Operador TypeOf (Visual Basic)