У меня есть страница aspx, которая динамически загружает UserControl в объект Panel на основе входных данных набора переключателей. UserControl успешно добавляет и правильно отображает в Panel при обратной передаче и прекрасно вызывает событие Page_Load () в UC, но когда я взаимодействую с формой любым способом, который вызовет событие, событие не перехватывается при обратной передаче.
Я попытался добавить ассоциацию обработки событий в Page_Load (), которую, как я знаю, вызывали, а также добавить ассоциацию в тег ASP.NET без каких-либо различий в результате.
Вот как я добавляю элемент управления (имена объектов были упрощены):
private UserControl _control;
protected void RadioButtonGroup_CheckedChanged(object sender, EventArgs e)
{
RadioButton radioButton = (RadioButton)sender;
if (radioButton == RadioButton1Ctl)
{
_control = (UserControl1)LoadControl("~/Controls/UserControl1.ascx");
PanelCtl.Controls.Add(_control);
}
else if (radioButton == RadioButton2Ctl)
{
_control = (UserControl2)LoadControl("~/Controls/UserControl2.ascx");
PanelCtl.Controls.Add(_control);
}
}
Как я уже сказал, элемент управления успешно добавляется, когда я нажимаю какие-либо кнопки или получаю какие-либо события обратной передачи, которые должны быть связаны с UC, элемент управления удаляется со страницы и события не запускаются.
Любая помощь будет принята с благодарностью.