У меня есть UpdatePanel и в ней обычная панель. В Panel я динамически добавляю простые UserControls. Пользовательский контроль имеет кнопку и метку. Когда я нажимаю кнопку в элементе управления, она удаляет все элементы управления в панели, которые я добавила динамически.
Кто-нибудь может помочь?
int controlID = 0;
List<Control> cc = new List<Control>();
if (Session["ControlsCompleted"] != null)
{
cc = Session["ControlsCompleted"] as List<Control>;
for (int i = 0; i < cc.Count; i++)
{
pnlCompletedEducation.Controls.Add(cc[i]);
}
controlID = cc.Count;
}
Controls_TestWebUserControl ct = LoadControl(@"Controls\TestWebUserControl.ascx") as Controls_TestWebUserControl;
ct.ID = controlID.ToString();
cc.Add(ct);
ct.EnableViewState = true;
pnlCompletedEducation.Controls.Add(ct);
txtInstitutionName.Text = controlID.ToString();
List<Control> lc = new List<Control>();
for (int i = 0; i < pnlCompletedEducation.Controls.Count; i++)
{
lc.Add(pnlCompletedEducation.Controls[i]);
}
Session["ControlsCompleted"] = lc;
Так я добавляю элементы управления на панель. Мне пришлось где-то их хранить, и я не мог сделать это с помощью ViewState, поэтому я использовал сессию, что является плохой идеей.