Dépannage des exceptions : System.InvalidCastException
Une exception InvalidCastException est levée lorsqu'une défaillance se produit pendant une conversion de référence explicite. Des conversions de références sont des conversions d'un type référence à un autre. Si elles peuvent modifier le type de la référence, elles ne modifient jamais le type ou la valeur de la cible de la conversion L'exécution d'un cast des objets d'un type en un autre est souvent à l'origine de cette exception.
Conseils associés
- Comparez les types sources aux types de destination pour vérifier la validité de la conversion.
Pour plus d'informations sur les conversions prises en charge par le système, consultez Convert.
Notes
Pour réussir une conversion de référence explicite, la valeur source doit être Null (Nothing en Visual Basic) ou le type d'objet référencé par l'argument source doit être convertible au type de destination par une conversion de référence implicite.
Lorsqu'une application Visual Basic 6.0 avec un appel à un événement personnalisé dans un contrôle utilisateur est mise à niveau vers une version plus récente de Visual Basic et qu'elle s'exécute, cette exception peut se produire avec les informations supplémentaires : "Le cast spécifié n'est pas valide." Pour corriger cette erreur, recherchez la ligne de code suivante dans Form1 :
Call UserControl11_MyCustomEvent(UserControl11, New UserControl1.MyCustomEventEventArgs(5))
Puis, remplacez-la par :
Call UserControl11_MyCustomEvent(UserControl11(0), New UserControl1.MyCustomEventEventArgs(5))
Voir aussi
Tâches
Comment : utiliser l'Assistant Exception
Comment : convertir un objet en un autre type dans Visual Basic