@Hemant-Sharma is wright. ASP.Net doesn't retain dynamically created controls once there are created. Unless you call for each post back on Page_Load() or somewhere else. For example
protected void Page_Load(object sender, EventArgs e)
{
LinkButton lb = new LinkButton();
lb.Text = "Click me"
lb.Click += new EventHandler(clickMe);
this.Panel1.Controls.Add(lb);
}
private void clickMe(object sender, EventArgs e)
{
}
The link button will raise it's event whenever click, which eventually calls a post back. Without doing this it won't retain it's event.
I hope this will give you a clue.