Share via


Problembehandlung bei Ausnahmen: System.InvalidCastException

Eine InvalidCastException-Ausnahme wird ausgelöst, wenn ein Fehler während einer expliziten Verweiskonvertierung auftritt. Verweiskonvertierungen sind Konvertierungen von einem Referenztyp zu einem anderen. Dabei kann der Typ des Verweises geändert werden, nie jedoch der Typ oder Wert des Konvertierungsziels. Typumwandlung bei Objekten ist ein häufiger Grund für diese Ausnahme.

Tipps

  • Vergleichen Sie die Quelltypen mit den Zieltypen, um sicherzustellen, dass die Konvertierung gültig ist.
    Informationen über Konvertierungen, die vom System unterstützt werden, finden Sie unter Convert.

Hinweise

Damit eine explizite Verweiskonvertierung erfolgreich ist, muss der Quellwert NULL sein (Nothing in Visual Basic), oder der Objekttyp, auf den das Quellargument verweist, muss durch implizite Verweiskonvertierung in den Zieltyp konvertierbar sein.

Wenn eine Visual Basic 6.0-Anwendung mit einem Aufruf eines benutzerdefinierten Ereignisses in einem Benutzersteuerelement auf eine neue Version von Visual Basic aktualisiert und dann ausgeführt wird, wird diese Ausnahme womöglich durch folgende Information ergänzt: "Die angegebene Umwandlung ist ungültig." Um diesen Fehler zu beheben, suchen Sie die folgende Codezeile in Form1:

Call UserControl11_MyCustomEvent(UserControl11, New UserControl1.MyCustomEventEventArgs(5))

Und ersetzen Sie sie durch:

Call UserControl11_MyCustomEvent(UserControl11(0), New UserControl1.MyCustomEventEventArgs(5))

Siehe auch

Aufgaben

Gewusst wie: Verwenden des Ausnahmen-Assistenten

Gewusst wie: Konvertieren eines Objekts in einen anderen Typ in Visual Basic

Gewusst wie: Implementieren von benutzerdefinierten Konvertierungen zwischen Strukturen (C#-Programmierhandbuch)

Referenz

InvalidCastException

Konzepte

Konvertieren von Zeichenfolgen in .NET Framework-Datentypen