динамически созданные элементы управления исчезают при нажатии - PullRequest
1 голос
/ 03 сентября 2010

динамические элементы управления пропали сразу после того, как я щелкнул по нему, почему это происходит и как я могу это исправить.

Ответы [ 2 ]

7 голосов
/ 03 сентября 2010

Динамически созданные элементы управления должны быть воссозданы в каждом постбеке, иначе они не будут доступны, и ни одно из их событий не сработает.

Флажки добавляются только при изменении раскрывающегося списка, поэтому другие постбэки не будут добавлять их.

Лучше всего создавать динамические элементы управления на странице OnInit событие.

Читайте о жизненном цикле страницы здесь .

0 голосов
/ 22 июня 2018
  • Создать панель
  • Не создавать на page_load

Добавить этот код

protected override void CreateChildControls()
{
    base.CreateChildControls();
    loadCheckbox();
}

public void loadCheckbox()
{
    int checkCount = 10;
    CheckBox[] chk = new CheckBox[checkCount];

    for(int i == 0; i<=10; i++)
    {
        chk[i] = new CheckBox();
        chk[i].ID = rCmt.cmtkey;
        chk[i].Text = rCmt.rootcommitteename;
        Panel1.Controls.Add(chk[i]);          
    }
}
...