У меня есть UpdatePanel, в котором есть ретранслятор, а внутри ретранслятора есть кнопка, которую я хочу быть PostBackTrigger для UpdatePanel (а не AsyncPostBackTrigger).ASP.NET Repeater внутри UpdatePanel, необходимо создать PostBackTrigger
Я попытался создать триггер в коде, находящемся в событии ItemDataBound в Repeater (используя код ниже), но ничего не пробовал работать.
PostBackTrigger trigger = new PostBackTrigger();
//failed
//trigger.ControlID = "btnCourseAttachmentUpdateSubmit";
//failed
//trigger.ControlID = ((Button)e.Item.FindControl("btnCourseAttachmentUpdateSubmit")).ID;
//failed
//trigger.ControlID = ((Button)e.Item.FindControl("btnCourseAttachmentUpdateSubmit")).ClientID;
//failed
//trigger.ControlID = ((Button)e.Item.FindControl("btnCourseAttachmentUpdateSubmit")).UniqueID;
panAttachments.Triggers.Add(trigger);
Я знаю, что есть метод, чтобы решить эту проблему, используя скрытую кнопку, но прежде, чем я сделал, что я задавался вопросом, есть ли способ сделать это похоже на то, что я пытался в коде выше?
Я стараюсь держаться подальше от панелей обновления. Сделайте ajax-вызовы, используя JQuery вместо :-). – TGH
Только что нашел ответ сам (нужно подождать 8 часов, прежде чем я смогу добавить ответ сам). Мне нужно использовать ScriptManager.RegisterPostBackControl вместо того, чтобы пытаться добавить триггер. Например. ScriptManager.RegisterPostBackControl (e.Item.FindControl ("btnCourseAttachmentUpdateSubmit")); – johna
Хорошая работа. :-) Удачи! – TGH