hi everbody....
I have taken 3 dropdownlists in gridview when i select the value in first dropdownlist then accourding to that value i should bind 2 and 3 dropdownlists.
my first dropdownlist SelectedIndexChanged event is not firing...
Code:
protected void grid1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
string s2 = "select subDivisionName from Tbh_SubDivsionMaster";
SqlDataAdapter ada = new SqlDataAdapter(s2, con);
DataSet ds = new DataSet();
ada.Fill(ds);
DropDownList ddl1 = (DropDownList)e.Row.FindControl("ddl1");
ddl1.DataSource = ds;
ddl1.DataTextField = "subDivisionName";
ddl1.DataBind();
}
}
protected void ddl1_SelectedIndexChanged1(object sender,EventArgs e)
{
DropDownList d1=new DropDownList();
DropDownList d2=new DropDownList();
DropDownList d3=new DropDownList();
foreach(GridViewRow row in grid1.Rows)
{
d1=(DropDownList)row.FindControl("ddl1");
d2=(DropDownList)row.FindControl("div");
d3=(DropDownList)row.FindControl("cir");
if (d1.SelectedValue.ToString() == "CD I UDR")
{
d2.Visible = false;
d3.Visible = false;
}
else
{
d2.Visible = true;
d2.Visible = true;
}
}
}
HTML Code:
<asp:GridView ID="grid1" runat="server" OnRowDataBound="grid1_RowDataBound" AutoGenerateColumns="False" BackColor="LightGoldenrodYellow" BorderColor="Tan" BorderWidth="1px" CellPadding="2" ForeColor="Black" GridLines="None" >
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:DropDownList ID="ddl1" runat="server" DataTextField="subDivisionName" OnSelectedIndexChanged="ddl1_SelectedIndexChanged1" AutoPostBack="true" >
</asp:DropDownList>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
<asp:DropDownList ID="div" runat="server" DataTextField="DivisionName" ></asp:DropDownList>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
<asp:DropDownList ID="cir" runat="server" DataTextField="Circle" ></asp:DropDownList>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
<asp:Label ID="empname" runat="server" Text='<%#Bind("EmployeeName")%>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>