c# - Set selected value of DropDownList based on database -


i have dropdownlist in gridview , when textbox changed, selected value in dropdownlists (three separate ones in total) match data in database. code in textbox changed event below:

protected void textbox1_textchanged(object sender, eventargs e)     {         dropdownlist ddl = new dropdownlist();         string connectionstring = configurationmanager.connectionstrings["*******"].connectionstring;         using (sqlconnection con = new sqlconnection(connectionstring))         {             string query = "select one, two, 3 table id = " + textbox1.text;             sqldataadapter sda = new sqldataadapter(query, con);             dataset ds = new dataset();             int num = sda.fill(ds);             if (num > 0)             {                 gridview1.visible = true;                 gridview1.datasource = ds;                 gridview1.databind();             }             else             {                 if (num == 0)                 {                     gridview1.visible = false;                 }                 else                 {                     bindgrid();                 }             }         } 

try using rowdatabound event. work, drop-down-lists must populated values, , in event, selectedvalue assigned.

protected void gridview1_rowdatabound(object sender, gridviewroweventargs e) {     if (e.row.rowtype == datacontrolrowtype.datarow)     {         // assumes drop-down-list columns first, second, , third columns (ordinal positions 0, 1, , 2)         dropdownlist ddl1, ddl2, ddl3;         ddl1 = (dropdownlist)e.row.cells[0].controls[0];         ddl2 = (dropdownlist)e.row.cells[1].controls[0];         ddl3 = (dropdownlist)e.row.cells[2].controls[0];         datarow currentrow = (datarow)e.row.dataitem;         ddl1.selectedvalue = currentrow[0].tostring();         ddl2.selectedvalue = currentrow[1].tostring();         ddl3.selectedvalue = currentrow[2].tostring();     } } 

Comments