Wyrażenie typu "<typename1>" nigdy nie może być typu "<typename2>"

Wyrażenie TypeOf...Is testuje zmienną referencyjną obiektu do typu danych, którego nie może przechowywać.

W niektórych przypadkach kompilator może określić, że test ...Is może zakończyć się niepowodzeniemTypeOf, na przykład jeśli nie ma relacji dziedziczenia między dwiema klasami.

Poniższy kod może wygenerować ten błąd.

Dim refVar as System.Windows.Forms.Form

If TypeOf refVar Is System.Array

End If

Ponieważ Form i Array są całkowicie niepowiązane typy, kompilator może określić, że TypeOfwyrażenie ...Is zwraca False dowolną wartość refVar.

Identyfikator błędu: BC31430

Aby poprawić ten błąd

  • Przetestuj zmienną pod kątem realistycznego typu danych lub całkowicie usuń TypeOftest ...Is

Zobacz też