Идея состоит в том, чтобы создать список кнопок, в которых вы будете хранить кнопки, созданные в btnCreateDynamic_click.
у вас может быть такой метод:
private Button CreateButton(string id, string name)
{
Button b = new Button();
b.Text = name;
b.ID = id;
b.Click += new EventHandler(Button_Click);
b.OnClientClick = "ButtonClick('" + b.ClientID + "')";
return b;
}
в btnCreateDynamic_clickу вас может быть что-то вроде:
Button b = CreateButton("dinamicBtn"+myDinamicButtonsList.Count.ToString(),"dinamicBtn"+myDinamicButtonsList.Count.ToString());
myDinamicButtonsList.add(b);
и в pageLoad, например, вы можете сделать что-то вроде
foreach(button btn in myDinamicButtonsList){
form1.Controls.Add(btn));
}
List<Button> myDinamicButtonsList = new List<Button>();
myDinamicButtonsList должен храниться где-то, откуда он может быть получен после каждого запроса.
РЕДАКТИРОВАТЬ : При загрузке страницы вы можете получить что-то вроде этого:
if(Session["myDinamicButtons"] == null){
List<Button> myDinamicButtonsList = new List<Button>();
Session["myDinamicButtons"] = myDinamicButtonsList;
}
foreach(Button btn in Session["myDinamicButtons"] as List<Button>){
form1.Controls.Add(btn));
}
Я не проверял это, но он должен работать.