Me.Controls(MyLabel) [Résolu]

Messages postés
9
Date d'inscription
vendredi 24 janvier 2014
Statut
Membre
Dernière intervention
17 juin 2015
- - Dernière réponse : 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 ?
Afficher la suite 

2 réponses

Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
209
0
Merci
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)
Commenter la réponse de ucfoutu
Messages postés
9
Date d'inscription
vendredi 24 janvier 2014
Statut
Membre
Dernière intervention
17 juin 2015
0
Merci
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)
Commenter la réponse de Ptitfils