custom server control
От: hujg  
Дата: 10.11.11 19:34
Оценка:
Здравствуйте, народ!
Если задача создать кастомный серверный контрол с динамически создаваемыми контролами внутри него. Но столкнулся с проблемой, что при каждом постбэке теряются контролы которые я добавлял.
public class MyControl : Control
{
LinkButton addButton;
protected override void CreateChildControls()
{
base.CreateChildControls();
addButton = new LinkButton();
addButton.Text = "Add";
addButton.Click += new EventHandler(addButton_Click);
this.Controls.Add(addButton);
}

protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
EnsureChildControls();
}

void addButton_Click(object sender, EventArgs e)
{
this.Controls.Add(new DropDownList()); // this.Controls.Count всегда равен 1 при всех последующих постбках.
}

public string GetInfo() //Соответственно сколько бы я не кликал на кнопку Add, DropDownList-в в this.Controls не появляется. Help me please.
{
string info = "";
foreach (Control c in this.Controls)
{
if (c is DropDownList)
{
info += ((DropDownList)c).SelectedValue;
}
}
return info;
}
}
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.