Étiquette Cliquez Sur L'Événement
J'essaie aussi de créer un événement click pour un groupe de etiquettes qui sont créés dynamiquement comme ceci:
private void AddLBL_Btn_Click(object sender, EventArgs e)
{
int ListCount = listBox1.Items.Count;
int lbl = 0;
foreach (var listBoxItem in listBox1.Items)
{
Label LB = new Label();
LB.Name = "Label" + listBoxItem.ToString();
LB.Location = new Point(257, (51 * lbl) + 25);
LB.Size = new Size(500, 13);
LB.Text = listBoxItem.ToString();
Controls.Add(LB);
lbl++;
}
LB.Click += new EventHandler(PB_Click);//error here
}
protected void LB_Click(object sender, EventArgs e)
{
webBrowser1.Navigate("http://www.mysite/" + LB);//Navigate to site on label
}
J'obtiens une erreur: "Le nom de" LB "n'existe pas dans le contexte actuel" becauseI suis création de LB dans la boucle et je ne suis pas assez intelligent pour savoir comment déclarer LB donc je peux l'utiliser en dehors de la boucle.
En outre, je tiens à passer à l'étiquette nom (listBoxItem) sur l'événement click et avoir accès à l'endroit LB est dans le WebBrowser appel. Comme: webBrowser1.Naviguer("http://www.mysite/" + LB);//Accédez au site sur l'étiquette
OriginalL'auteur eltel2910 | 2013-07-31
Vous devez vous connecter pour publier un commentaire.
Votre
LB
objet qui est hors de portée, vous devez vous déplacer à l'intérieur de la boucle. (En outre, le gestionnaire vous ai montré est appeléLB_Click
mais vous essayez d'attribuerPB_Click
; je suppose que c'était une faute de frappe).La
sender
dans votre gestionnaire d'événement sera l'étiquette qui a été cliqué.OriginalL'auteur keyboardP