Re[3]: custom server control
От: Аноним  
Дата: 11.11.11 07:31
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, Lloyd, Вы писали:


L>>Здравствуйте, hujg, Вы писали:


H>>>Если задача создать кастомный серверный контрол с динамически создаваемыми контролами внутри него. Но столкнулся с проблемой, что при каждом постбэке теряются контролы которые я добавлял.


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


А>Ага, спасибо. Я чего то протупил.


Нет, я что-то все равно не понимаю. Если например хранить количество созданных ddl в скрытом поле
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
_hidden = new HiddenField();
this.Controls.Add(_hidden);
}
void addButton_Click(object sender, EventArgs e)
{
this.Controls.Add(new DropDownList());
_hidden.Value = this.Contnrols.Count++;
}
и потом пытаться пересоздавать ddl в CreateChildControls, так вот на момент вызова CreateChildControls в hidden.Value ничего нет, а значение в ней восстанавливается только к моменту вызова обработчика void addButton_Click(object sender, EventArgs e)
protected override void CreateChildControls()
{
base.CreateChildControls();
...
for(int i = 0; i < int.Parse(_hidden.Value); i++)
{ CreateDDL(); }
}

Как быть?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.