// Ici, je crée les étiquettes lors de l'exécution en un seul clicC# Comment changer la propriété visible d'une étiquette créée lors de l'exécution
Label[] labels = new Label[countresult];
for (int i = 1; i < countresult; i++)
{
labels[i] = new Label();
labels[i].Font = new Font("Arial Rounded MT Bold", 30);
labels[i].ForeColor = System.Drawing.Color.Red;
labels[i].AutoSize = true;
labels[i].Text = "";
//Here I try to assign the value visible = true
labels[i].Visible = true;
labels[i].TabIndex = i;
}
// Dans un vide privé d'un timer tick J'assigne le nom de étiquette var "a" et je fais les 3 méthodes
string a = string.Format("labels[{0}]", labelscount);
// 1ère méthode
if (this.Controls.ContainsKey(a))
{
this.Controls[a].Visible=false;
}
// 2ème méthode
foreach (Control control in Controls)
{
if (control.Name == a)
{
control.Visible = false;
}
}
// 3ème méthode
if (this.Controls[a] is Label) this.Controls[a].Visible=false;
labelscount++;
Malheureusement, aucun fonctionne.
Quelqu'un sait ce qui s'est passé?
étiquettes [i] .Visible = false; Avez-vous essayé d'appeler cela spécifiquement? – hogarth45
Avez-vous réellement ajouté les étiquettes à un contrôle parent? –
Oui, j'essaie cela, mais dire le nom n'existe pas dans le contexte actuel –