Я пытаюсь тоже создать событие щелчка для группы ярлыках, лейблах, которые создаются динамически, как это:Ярлык Нажмите Event
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
}
Я получаю сообщение об ошибке: «Название„LB“не существует в текущий контекст ", потому что я создаю LB внутри цикла, и я недостаточно умен, чтобы знать, как объявить LB, чтобы я мог использовать его за пределами цикла.
Кроме того, я хотел бы передать имя метки (listBoxItem) на событие click и иметь его там, где находится LB в вызове WebBrowser. Например: webBrowser1.Navigate («http://www.mysite/» + LB); // Перейти на сайт на этикетке
Я добавил LB.Click + = новый EventHandler (PB_Click) внутри цикла foreach, и теперь он отлично работает. Кроме того, webBrowser1.Navigate ("http: //www.mysite/" + lbl.Text); отлично работает. благодаря – eltel2910