Me.Controls(MyLabel)

Résolu
Ptitfils Messages postés 9 Date d'inscription vendredi 24 janvier 2014 Statut Membre Dernière intervention 17 juin 2015 - 16 juin 2015 à 15:54
Ptitfils Messages postés 9 Date d'inscription vendredi 24 janvier 2014 Statut Membre Dernière intervention 17 juin 2015 - 16 juin 2015 à 16:19
Bonjour,
J'ai un petit problème avec la ligne citée en sujet.

Dim Mylabel as string
Dim i as integer
i=2
Mylabel = label & i
Me.Controls(MyLabel).text = "THEO


J'ai toujours un erreur :
System.NullReferenceException

j'ai place 2 msgbox pour y voir plus clair :
Le premier mesure la valeur de Mylabel : Et c'est bien label1
Le second mesure la valeur de Me.Controls(MyLabel) : Vide
Et j'ai même un 3eme qui mesure la valeur de Me.Controls(Mylabel).Text qui devrais par défaut être : Label1. --> J'ai la même erreur.

Une solution ?

2 réponses

ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
16 juin 2015 à 16:13
Mylabel = label & i

ne concatène pas "label" & i mais une variable label et i ===>>> si la variable label n'est pas initialmisée (pas de valeur affectée) label & i = "" & i = i (2 dans ton exemple)
0
Ptitfils Messages postés 9 Date d'inscription vendredi 24 janvier 2014 Statut Membre Dernière intervention 17 juin 2015
16 juin 2015 à 16:19
J'ai trouvé ! Après avoir tourné en rond beaucoup de temps j'ai enfin trouvé !
J'ignore exactement la nature exacte du problème. J'ai deux solutions différentes que j'ai effectué en même temps qui ont fonctionné !
Mon Mylabel était dans un calque tableau (TableLayoutPanel1)
J'ai donc remplacé :
Me.Controls(MyLabel).text = "THEO

par
Me.TableLayoutPanel1.Controls(MyLabel).text = "THEO"


Mais j'ai aussi fait une deuxième intervention :
J'avais lors de la création :
Me.TableLayoutPanel1.Controls.Add(Me.Umail1, 0, 1)

j'ai remplacé par :
Me.TableLayoutPanel1.Controls.Add(Umail1, 0, 1)
0
Rejoignez-nous