Я обернул все внутри 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);
}