0

I had tried binding dynamically created drop down list inside grid view and also added the selected index change event for it but it is giving me output when i had change value of first row drop down. i want individual rows selected index change event what can i do?

I had taken grid view in update panel and added dynamically drop down list in grid view and also bind it for each row.now i want to add selected index change event for each rows drop down list . my code is as follows:-

for (int i = 0; i < gv_details.Rows.Count; i++)
{
    DropDownList ddl_Hotel = new DropDownList();  
    ddl_Hotel.ID = "ddl_Hotel_" + i;
    //add TextBox to the first column
    string loc = gv_details.Rows[i].Cells[3].Text.ToString();
    string selecctloc = "select locid from loc_master where location='" + loc + "'";

    SqlDataReader dr = cdf.Execute_SelectForDR(selecctloc);
    dr.Read();
    string loc_id = dr["locid"].ToString();
    dr.Close();

    string bind_hotelList = "SELECT Hotel_Id,Hotel_Name FROM Mast_Hotel WHERE LocId ='" + loc_id + "'";
    cdf.Bind_DropDownList(ddl_Hotel, bind_hotelList, "Hotel_Name", "Hotel_Id");
    //ddl_Hotel.Items.Add(new ListItem("Select", "0"));
    ddl_Hotel.Items.Insert(0, new ListItem("---Select---", "0"));
    ddl_Hotel.SelectedValue = "0";
    gv_details.Columns[5].Visible = true;


    ddl_Hotel.SelectedIndexChanged += new EventHandler(ddl_Hotel_SelectedIndexChanged);
    this.Form.Controls.Add(ddl_Hotel);
    UpdatePanel1.ContentTemplateContainer.Controls.Add(ddl_Hotel);
    AsyncPostBackTrigger trigger = new AsyncPostBackTrigger();
    trigger.ControlID = ddl_Hotel.ID;
    trigger.EventName = "SelectedIndexChanged";
    UpdatePanel1.Triggers.Add(trigger);
    ddl_Hotel.AutoPostBack = true;
    gv_details.Rows[i].Cells[5].Controls.Add(ddl_Hotel);
    //  ddl_Hotel.Attributes.Add("onchange", "retun destination_name()");
} 

please suggest me the answer.

4

0 回答 0