Из вашего комментария я предполагаю, что вы делаете что-то вроде:
void Page_Load(object s, EventArgs e)
{
ImageButton img = new ImageButton();
img.click += new ImageClickEventHandler(imageButton_Click);
Controls.Add(img);
}
Это не сработает, потому что механизм PostBack отправляет Id элемента управления обратно в поле EventTarget, а цель не указана, поэтому он не знает, где его обработать.
Чтобы заставить это работать должным образом, я обычно оборачиваю дисплей в пользовательский элемент управления и перезаписываю метод CreateChildControls()
. Это гарантирует, что элемент управления будет создан в правильное время и доступен после обработки обратной передачи.