В моем приложении у меня есть массив кнопок, созданных динамически. Я пытаюсь поднять событие onclick для этих кнопок и изменить текст кнопки, которую я нажимаю. Я попробовал приведенный ниже код для это, но его не работает. Как я могу это сделать?. Все предложения?Нажмите событие для динамически созданного массива кнопок
Код:
for (int i = 0; i < 5; i++)
{
lbl = new Button[5];
lbl[i] = new Button();
lbl[i].Text = "hi";
lbl[i].Width = 30;
lbl[i].Click += new EventHandler(lbl_click);
//lbl[i].CssClass = "label";
div1.Controls.Add(lbl[i]);
}
Нажмите Event:
protected void lbl_click(object sender, EventArgs e)
{
Button[] lbl = sender as button[];
lbl[i].Text = "clicked";
}
Это ваш фактический код? Вы воссоздаете массив кнопок с нуля как в обработчике 'Click', так и на каждой итерации цикла в вашем первом фрагменте кода. (Ваше редактирование только исправило первую проблему.) –
Ах, и ваше редактирование также ввело другую проблему: 'sender' является' Button', а не 'Button []'. –
@ FrédéricHamidi Я попробовал ответ Стиву, он работает в pageload, но не внутри метода. – coder