Mega Code Archive

 
Categories / ASP.Net Tutorial / Page Lifecycle
 

Add a control to a page dynamically

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs"  Inherits="DynamicButton" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server">     <title>Untitled Page</title> </head> <body>     <form id="form1" runat="server">     <div>           <asp:Panel id="Panel1" runat="server" Width="364px" Height="142px">                    <asp:Label id=Label1 runat="server">(No value.)</asp:Label>                    <asp:PlaceHolder id="PlaceHolder1" runat="server"></asp:PlaceHolder>           <asp:Button id="cmdReset" runat="server" Width="112px" Text="Reset Text" OnClick="cmdReset_Click"></asp:Button><br/>                    <hr/>       </asp:Panel>     </div>     </form> </body> </html> File: Default.aspx.cs using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; public partial class DynamicButton : System.Web.UI.Page {     private void Page_Load(object sender, EventArgs e)     {     Button newButton = new Button();     newButton.Text = "Dynamic Button";     newButton.ID = "newButton";     newButton.Click += new System.EventHandler(this.Button_Click);     PlaceHolder1.Controls.Add(newButton);     }   protected void Button_Click(object sender, System.EventArgs e)   {     Label1.Text = "You clicked the dynamic button.";   }   protected void cmdReset_Click(object sender, System.EventArgs e)   {     Label1.Text = "(No value.)";   }   protected void cmdRemove_Click(object sender, System.EventArgs e)   {     Button foundButton = (Button)Page.FindControl("newButton");     if (foundButton != null)     {       foundButton.Parent.Controls.Remove(foundButton);     }   } }