Hi,
I have generated 2 dropdown list dynamically.Now i want to fire event on 1st DDL so that depend on Id 2nd DDL data gets fill up (like depend on main category ,sub category will fill)
Please help for this.I am attaching sourse code i have written for DDL
Thanks
Archana
Loading
Mayur GujrathiPosted Nov 29, 2011, 2:57 AM
Archana your problem is to generate event or what to write in event
Create evnt like this
Button button = new Button();
button.Text = i.ToString();
button.Click += new EventHandler(Button_Click);
and do what you want as suggested by datta or nayak as per your need
Satyapriya NayakPosted Nov 29, 2011, 1:21 AM
Try this...
Default.aspx code
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
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>Untitled Pagetitle>
head>
<body>
<form id="form1" runat="server">
<div>
<br />
<asp:Label ID="Label3" runat="server" Text="Country" Width="100px">asp:Label>
<asp:DropDownList ID="DropDownList_country" runat="server" AutoPostBack="True"
onselectedindexchanged="DropDownList_country_SelectedIndexChanged">
asp:DropDownList>
<br />
<asp:Label ID="Label2" runat="server" Text="State" Width="100px">asp:Label>
<asp:DropDownList ID="DropDownList_state" runat="server">
asp:DropDownList>
div>
form>
body>
html>
Default.aspx.cs code
using System;
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;
using System.Data.SqlClient;
public partial class _Default : System.Web.UI.Page
{
string strConnString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
string str;
SqlCommand com;
protected void Page_Load(object sender, EventArgs e)
{
SqlConnection con = new SqlConnection(strConnString);
if (!IsPostBack)
{
DropDownList_country.Items.Add("Choose country");
con.Open();
str = "select country from area group by country";
com = new SqlCommand(str, con);
SqlDataReader reader = com.ExecuteReader();
while (reader.Read())
{
DropDownList_country.Items.Add(reader["country"].ToString());
}
reader.Close();
con.Close();
}
DropDownList_state.Items.Clear();
}
protected void DropDownList_country_SelectedIndexChanged(object sender, EventArgs e)
{
SqlConnection con = new SqlConnection(strConnString);
con.Open();
str = "select * from area where country='" + DropDownList_country.SelectedItem.Text + "'";
com = new SqlCommand(str, con);
SqlDataReader reader = com.ExecuteReader();
while (reader.Read())
{
DropDownList_state.Items.Add(reader["state"].ToString());
}
reader.Close();
con.Close();
}
}
Thanks
Datta KharadPosted Nov 29, 2011, 12:50 AM
Note:- AutoPostBack=True
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
con=new SqlConnection("Your Connection string");
con.Open();
string sSQL = "Select SubCat from tabname where id='" + DropDownList1.SelectedValue + "'";
da = new SqlDataAdapter(sSQL, con);
DataSet ds=new DataSet();
da.Fill(ds, "Tabname");
foreach (DataRow dr in ds.Tables["Tabname"].Rows)
{
DropDownList2.Items.Add(dr[0].ToString());
}
}