Я обернул все внутри Page_Init в! IsPostBack, если. При этом загружались кнопки ссылок и начальное состояние страницы, но когда я нажимал на одну из этих кнопок ссылок, все они исчезали, и на странице ничего не появлялось.
ю, что этот вопрос задавался тысячи раз, и я боролся с ним раньше, но по какой-то причине я не могу выполнить то, что хочу достичь ... У меня есть динамически добавленная LinkButton, которая при нажатии будет динамически добавлять элемент управления (в данном примере текстовое поле) для той же панели. Намерение состоит в том, чтобы постоянно добавлять столько элементов управления, сколько раз был нажат элемент LinkButton (т. Е. Я щелкаю один раз, один блок, затем другой щелчок дает мне 2 блока, другой щелчок добавляет третий). В приведенном ниже коде я использую сериализованную текущую дату и время, чтобы создать уникальный идентификатор для каждого элемента управления текстового поля.
Когда я выполняю код, нажатие «Добавить фильтр» создаст новое текстовое поле, но при повторном нажатии создаст новое и избавится от предыдущего. Вместо этого я хочу сохранить предыдущее текстовое поле, а также любые данные, представленные в нем.
Ваша помощь приветствуется.
В aspx:
<asp:Panel ID="pnlFilter" runat="server">
</asp:Panel>
В aspx.cs:
protected void Page_Init(object sender, EventArgs e)
{
LinkButton lb = new LinkButton();
lb.ID = "lbAddFilter";
pnlFilter.Controls.Add(lb);
lb.Text = "Add Filter";
lb.Click += new EventHandler(lbAddFilter_Click);
}
void lbAddFilter_Click(object sender, EventArgs e)
{
TextBox tb = new TextBox();
tb.ID = "tb" + DateTime.Now.ToBinary().ToString();
pnlFilter.Controls.Add(tb);
}