Click here to Skip to main content
15,891,253 members
Home / Discussions / ASP.NET
   

ASP.NET

 
AnswerRe: Tooltip on gridview, how to ? Pin
Docarctiss27-Jan-09 22:02
Docarctiss27-Jan-09 22:02 
QuestionHow to Add an UpdatePanel dynamically? Pin
meeram39527-Jan-09 19:01
meeram39527-Jan-09 19:01 
AnswerRe: How to Add an UpdatePanel dynamically? Pin
N a v a n e e t h27-Jan-09 19:10
N a v a n e e t h27-Jan-09 19:10 
GeneralRe: How to Add an UpdatePanel dynamically? Pin
meeram39527-Jan-09 19:58
meeram39527-Jan-09 19:58 
GeneralRe: How to Add an UpdatePanel dynamically? Pin
N a v a n e e t h27-Jan-09 20:38
N a v a n e e t h27-Jan-09 20:38 
GeneralRe: How to Add an UpdatePanel dynamically? Pin
meeram39528-Jan-09 4:47
meeram39528-Jan-09 4:47 
GeneralRe: How to Add an UpdatePanel dynamically? Pin
N a v a n e e t h27-Jan-09 20:47
N a v a n e e t h27-Jan-09 20:47 
AnswerRe: How to Add an UpdatePanel dynamically? Pin
Rajdev Ramasamy27-Jan-09 20:11
Rajdev Ramasamy27-Jan-09 20:11 
We can add update panels dynamically. Please refer the following code sample(working):

Note: This is a Sample code


Aspx

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="DynamicUpdatePanel.aspx.cs" Inherits="DynamicUpdatePanel" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Dynamic Update Panel</title>
</head>
<body>
    <form id="frmDynamicUpdatePanel" runat="server">    
    <asp:ScriptManager ID="pageScriptManager" runat="server"></asp:ScriptManager>
  <asp:Panel ID="panelControls" runat="server">
  </asp:Panel>
    </form>
</body>
</html>



.CS

using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;

public partial class DynamicUpdatePanel : System.Web.UI.Page
{
    DataTable dtCountry;
    DataTable dtState;

    protected void Page_Load(object sender, EventArgs e)
    {
        PopulateData();
        CreateControls();
    }

    protected void CreateControls()
    {
        UpdatePanel updatePanel = new UpdatePanel();
                
        DropDownList ddlCountry = new DropDownList();
        ddlCountry.ID = "ddlCountry";
        ddlCountry.Items.Add(new ListItem("-Select-", "-1"));
        ddlCountry.DataSource = dtCountry;
        ddlCountry.DataValueField = "CountryID";
        ddlCountry.DataTextField = "CountryName";
        ddlCountry.DataBind();
        ddlCountry.SelectedIndexChanged += ddlCountry_SelectedIndexChanged;
        ddlCountry.Items.Insert(0, new ListItem("-Select-", "-1"));
        ddlCountry.AutoPostBack = true;

        DropDownList ddlState = new DropDownList();
        ddlState.ID = "ddlState";
        ddlState.Items.Insert(0, new ListItem("-Select-", "-1"));
        
        updatePanel.ContentTemplateContainer.Controls.AddAt(0, ddlCountry);
        updatePanel.ContentTemplateContainer.Controls.AddAt(1, ddlState);

        panelControls.Controls.Add(updatePanel);

    }

    protected void PopulateData()
    {
        dtCountry = new DataTable();
        DataColumn dc;

        dc = new DataColumn("CountryID");
        dtCountry.Columns.Add(dc);

        dc = new DataColumn("CountryName");
        dtCountry.Columns.Add(dc);

        dtState = new DataTable();

        dc = new DataColumn("CountryID");
        dtState.Columns.Add(dc);

        dc = new DataColumn("StateID");
        dtState.Columns.Add(dc);

        dc = new DataColumn("StateName");
        dtState.Columns.Add(dc);

        DataRow dr;

        dr = dtCountry.NewRow();
        dr["CountryID"] = "1";
        dr["CountryName"] = "India";
        dtCountry.Rows.Add(dr);

        dr = dtCountry.NewRow();
        dr["CountryID"] = "2";
        dr["CountryName"] = "USA";
        dtCountry.Rows.Add(dr);

        dr = dtState.NewRow();
        dr["CountryID"] = "1";
        dr["StateID"] = "1";
        dr["StateName"] = "Delhi";
        dtState.Rows.Add(dr);

        dr = dtState.NewRow();
        dr["CountryID"] = "1";
        dr["StateID"] = "2";
        dr["StateName"] = "UP";
        dtState.Rows.Add(dr);

        dr = dtState.NewRow();
        dr["CountryID"] = "1";
        dr["StateID"] = "3";
        dr["StateName"] = "AP";
        dtState.Rows.Add(dr);

        dr = dtState.NewRow();
        dr["CountryID"] = "1";
        dr["StateID"] = "4";
        dr["StateName"] = "MP";
        dtState.Rows.Add(dr);

        dr = dtState.NewRow();
        dr["CountryID"] = "1";
        dr["StateID"] = "5";
        dr["StateName"] = "Orissa";
        dtState.Rows.Add(dr);

        dr = dtState.NewRow();
        dr["CountryID"] = "2";
        dr["StateID"] = "6";
        dr["StateName"] = "Alabama";
        dtState.Rows.Add(dr);

        dr = dtState.NewRow();
        dr["CountryID"] = "2";
        dr["StateID"] = "7";
        dr["StateName"] = "Alaska";
        dtState.Rows.Add(dr);

        dr = dtState.NewRow();
        dr["CountryID"] = "2";
        dr["StateID"] = "8";
        dr["StateName"] = "Arizona";
        dtState.Rows.Add(dr);
        
    }

    protected void ddlCountry_SelectedIndexChanged(object sender, EventArgs e)
    {
        DropDownList ddlCountry = (DropDownList)sender;
        DropDownList ddlState = (DropDownList)panelControls.FindControl("ddlState");
        ddlState.Items.Clear();
        ddlState.Items.Add(new ListItem("-Select-", "-1"));
        
        if(ddlCountry.SelectedValue != "-1")
        {
            DataRow[] drCollection;
            drCollection = dtState.Select("CountryID = " + ddlCountry.SelectedValue);            
            foreach (DataRow dr in drCollection)
            {
                ddlState.Items.Add(new ListItem(dr["StateName"].ToString(), dr["StateID"].ToString()));
            }         
        }
    }
}



Please revert back on any doubts.


Thanks,
Rajdev KR
GeneralRe: How to Add an UpdatePanel dynamically? Pin
meeram39528-Jan-09 21:35
meeram39528-Jan-09 21:35 
QuestionSending Same Message to Multiple Users Pin
sjs4u27-Jan-09 19:00
sjs4u27-Jan-09 19:00 
AnswerRe: Sending Same Message to Multiple Users Pin
Aman Bhullar27-Jan-09 19:03
Aman Bhullar27-Jan-09 19:03 
GeneralRe: Sending Same Message to Multiple Users Pin
sjs4u27-Jan-09 19:12
sjs4u27-Jan-09 19:12 
GeneralRe: Sending Same Message to Multiple Users Pin
Aman Bhullar27-Jan-09 19:22
Aman Bhullar27-Jan-09 19:22 
GeneralRe: Sending Same Message to Multiple Users Pin
sjs4u27-Jan-09 19:28
sjs4u27-Jan-09 19:28 
GeneralRe: Sending Same Message to Multiple Users Pin
J4amieC27-Jan-09 23:29
J4amieC27-Jan-09 23:29 
GeneralRe: Sending Same Message to Multiple Users Pin
Aman Bhullar28-Jan-09 1:33
Aman Bhullar28-Jan-09 1:33 
QuestionJavaScript function for custom server control Pin
AnuMaria27-Jan-09 18:47
AnuMaria27-Jan-09 18:47 
AnswerRe: JavaScript function for custom server control Pin
N a v a n e e t h27-Jan-09 18:52
N a v a n e e t h27-Jan-09 18:52 
Questionretriving a file from another drive Pin
sarang_k27-Jan-09 17:59
sarang_k27-Jan-09 17:59 
AnswerRe: retriving a file from another drive Pin
N a v a n e e t h27-Jan-09 18:54
N a v a n e e t h27-Jan-09 18:54 
QuestionAfter security update that is described in security bulletin MS07-040 - ASP.NET 2.0 application started showing garbage data. [modified] Pin
payback27-Jan-09 17:23
payback27-Jan-09 17:23 
Questionnested master page problem Pin
Arif Liminto27-Jan-09 14:20
professionalArif Liminto27-Jan-09 14:20 
AnswerRe: nested master page problem Pin
josh41727-Jan-09 23:11
josh41727-Jan-09 23:11 
QuestionDisplay contents of a multiline textbox for printing Pin
krup7527-Jan-09 11:50
krup7527-Jan-09 11:50 
QuestionImages not showing up Pin
Ekjon27-Jan-09 9:55
Ekjon27-Jan-09 9:55 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.