Comment : déterminer le type désigné par une variable objet (Visual Basic)
Une variable objet contient un pointeur vers des données stockées ailleurs. Le type de ces données peut changer durant l'exécution. À tout moment, vous pouvez utiliser la méthode GetTypeCode pour déterminer le type d'exécution actuel ou le TypeOf, opérateur (Visual Basic) pour déterminer si le type d'exécution en cours est compatible avec un type spécifié.
Pour déterminer le type exact auquel une variable objet fait actuellement référence
Sur la variable objet, appelez la méthode GetType pour récupérer un objet Type.
Dim myObject As Object myObject.GetType()
Sur la classe Type, appelez la méthode partagée GetTypeCode pour récupérer la valeur d'énumération TypeCode pour le type de l'objet.
Dim myObject As Object Dim datTyp As Integer = Type.GetTypeCode(myObject.GetType()) MsgBox("myObject currently has type code " & CStr(datTyp))
Vous pouvez tester la valeur d'énumération TypeCode contre tout membre d'énumération digne d'intérêt, tel que Double.
Pour déterminer si le type d'une variable objet est compatible avec un type spécifié
Utilisez l'opérateur TypeOf avec l'Is, opérateur (Visual Basic) pour tester l'objet avec une expression TypeOf...Is.
If TypeOf objA Is System.Windows.Forms.Control Then MsgBox("objA is compatible with the Control class") End If
L'expression TypeOf...Is retourne True si le type de l'objet à l'exécution est compatible avec le type spécifié.
Le critère de compatibilité varie selon que le type spécifié est une classe, une structure ou une interface. En général, les types sont compatibles si l'objet est du même type, hérite du type spécifié ou l'implémente. Pour plus d'informations, consultez TypeOf, opérateur (Visual Basic).
Compilation du code
Notez que le type spécifié ne peut pas être une variable ni une expression. Il doit s'agir du nom d'un type défini, tel qu'une classe, une structure ou une interface. Cela inclut des types intrinsèques, tels que Integer et String.