asp.net - How to create text boxes and buttons dynamically and get the value from each text box in c#? -


i'm trying build tables dynamically text box , button in each table. tables added when pressed on button made post page , tables gone. build each table inside updatepanel when button clicked twice, postback occurred again.how can prevent potback? , then, how value inside text boxes? tnx much!

private void addtable(list<filesaving> fs) {       foreach (filesaving f in fs){     updatepanel = new updatepanel();     up.id = "updatepanel-"+f.filename;     up.updatemode = updatepanelupdatemode.conditional;     table t = new table();     t.cssclass = "filestbl";      tablerow htr = new tablerow();      tablecell td1 = new tablecell();     image fileimg = new image();     fileimg.imageurl = "images/"+f.fileextension+".png";     td1.controls.add(fileimg);     htr.cells.add(td1);      tablecell td2 = new tablecell();     td2.text = f.expname;     htr.cells.add(td2);      tablecell td3 = new tablecell();     image expimg = new image();     expimg.imageurl = "images/magnet.png";     td3.controls.add(expimg);     htr.cells.add(td3);      t.rows.add(htr);      tablerow mtr = new tablerow();      tablecell td4 = new tablecell();     td4.text = "";     mtr.cells.add(td4);      tablecell td5 = new tablecell();     td5.text = f.teamid.tostring();     mtr.cells.add(td5);      tablecell td6 = new tablecell();     image teamimg = new image();     teamimg.imageurl = "images/team3.png";     td6.controls.add(teamimg);     mtr.cells.add(td6);      t.rows.add(mtr);     tablerow ltr = new tablerow();      tablecell td7 = new tablecell();     hyperlink downloadlink = new hyperlink();     downloadlink.attributes.add("href", "http://proj.ruppin.ac.il/igroup39/test2/tar5/tar5.zip");     downloadlink.imageurl = "images/download2.png";     downloadlink.tooltip = "לחץ להורדה";     td7.controls.add(downloadlink);     ltr.cells.add(td7);      tablecell td8 = new tablecell();     if (f.reportgrade != -1)     {         td8.text = f.reportgrade.tostring();     }     else     {         textbox tb = new textbox();         tb.id = f.filename + "-tb";         gfn = tb.id;         tb.width = 40;         td8.controls.add(tb);          button btn = new button();         btn.id = f.filename + "-btn";         btn.text = "הזן ציון";         btn.click += new eventhandler(btn_click);         td8.controls.add(btn);      }      ltr.cells.add(td8);      tablecell td9 = new tablecell();     image gradeimg = new image();     gradeimg.imageurl = "images/grade.png";     td9.controls.add(gradeimg);     ltr.cells.add(td9);      t.rows.add(ltr);     up.contenttemplatecontainer.controls.add(t);     page.form.controls.add(up);     }  }  protected void btn_click(object sender, eventargs e) {     if (!ispostback)     {         button mybtn = (button)sender;         response.write(mybtn.id);     }  } 

so after long time thinking how solved this, friend, wrote in page_load when button pressed , postback occurred page rebuild dynamic controls, button press- role of session. new code:

protected void page_load(object sender, eventargs e) {     if (ispostback)     {          if (session["showfiles"] != null)         {             bool flag = (bool)session["showfiles"];             if (flag == true)             {                 filesaving fs = new filesaving();                 list<filesaving> fileslist = fs.fileslist(hiddenlbl.text);                 addtable(fileslist);             }         }     }     expscheduleclass escc = new expscheduleclass();     list<string> labcourses = escc.getcourselist();     // dynamically create dropdown list (aka ddl)     ddlcourses = new dropdownlist();     ddlcourses.datasource = labcourses; // set data source     ddlcourses.databind(); // bind data ddl control     ddlcourses.autopostback = true;     ddlcourses.selectedindexchanged += ddlcourses_selectedindexchanged;     courseph.controls.add(ddlcourses);  }  private void ddlcourses_selectedindexchanged(object sender, eventargs e) {     string[] coursesidarr = ddlcourses.selectedvalue.split(' ');     /* courselbl.text = coursesidarr[0];      string courseid = coursesidarr[0];//take id list*/     courselbl.text = coursesidarr[2];     classlbl.text = coursesidarr[4];     currnetyearlbl.text = coursesidarr[6];     semesterlbl.text = coursesidarr[8];     courselbl.forecolor = system.drawing.color.black;     currnetyearlbl.forecolor = system.drawing.color.black;     semesterlbl.forecolor = system.drawing.color.black;     classlbl.forecolor = system.drawing.color.black;     expscheduleclass siegl = new expscheduleclass();     list<string> lessonslist = siegl.getlessonlist(coursesidarr[2]);     ddllessons.datasource = lessonslist; // set data source     ddllessons.databind(); }  protected void ddllessons_selectedindexchanged(object sender, eventargs e) {     string[] lessonsidarr = ddllessons.selectedvalue.split(' ');     string lessonid = lessonsidarr[0];     lessonlbl.text = lessonid;     datelbl.text = lessonsidarr[1];     lessonlbl.forecolor = system.drawing.color.black;     hiddenlbl.text = lessonid;     filesaving fs = new filesaving();     list<filesaving> fileslist = fs.fileslist(lessonid);     addtable(fileslist);     session["showfiles"] = true;  } private void addtable(list<filesaving> fs) {     foreach (filesaving f in fs)     {         updatepanel = new updatepanel();         up.id = "updatepanel-" + f.filename;         up.updatemode = updatepanelupdatemode.conditional;         table t = new table();         t.cssclass = "filestbl";          //------------header row------------------------------------------------         tablerow htr = new tablerow();          tablecell td1 = new tablecell();         image fileimg = new image();         fileimg.imageurl = "images/" + f.fileextension + ".png";         td1.controls.add(fileimg);         htr.cells.add(td1);          tablecell td2 = new tablecell();         td2.text = f.expname;         htr.cells.add(td2);          tablecell td3 = new tablecell();         image expimg = new image();         expimg.imageurl = "images/magnet.png";         td3.controls.add(expimg);         htr.cells.add(td3);          t.rows.add(htr);          //------------middle row------------------------------------------------         tablerow mtr = new tablerow();          tablecell td4 = new tablecell();         td4.text = "";         mtr.cells.add(td4);          tablecell td5 = new tablecell();         td5.text = f.teamid.tostring();         mtr.cells.add(td5);          tablecell td6 = new tablecell();         image teamimg = new image();         teamimg.imageurl = "images/team3.png";         td6.controls.add(teamimg);         mtr.cells.add(td6);          t.rows.add(mtr);         //------------last row------------------------------------------------         tablerow ltr = new tablerow();          tablecell td7 = new tablecell();         hyperlink downloadlink = new hyperlink();         //downloadlink.attributes.add("href", "/igroup39/test2/project/reportfiles/" + f.filename);         downloadlink.attributes.add("href", "http://proj.ruppin.ac.il/igroup39/test2/tar5/tar5.zip");         downloadlink.imageurl = "images/download2.png";         downloadlink.tooltip = "לחץ להורדה";         td7.controls.add(downloadlink);         ltr.cells.add(td7);          tablecell td8 = new tablecell();         if (f.reportgrade != -1)         {             td8.text = f.reportgrade.tostring();         }         else         {             textbox tb = new textbox();             tb.id = f.filename + "-tb";             gfn = tb.id;             tb.width = 40;             td8.controls.add(tb);              button btn = new button();             btn.id = f.filename + "-btn";             btn.text = "הזן ציון";             btn.click += new eventhandler(btn_click);             td8.controls.add(btn);          }          ltr.cells.add(td8);          tablecell td9 = new tablecell();         image gradeimg = new image();         gradeimg.imageurl = "images/grade.png";         td9.controls.add(gradeimg);         ltr.cells.add(td9);          t.rows.add(ltr);         up.contenttemplatecontainer.controls.add(t);         page.form.controls.add(up);         //filestablesph.controls.add(up);     }  }  protected void btn_click(object sender, eventargs e) {      button mybtn = (button)sender;     string btnid = mybtn.id;     string[] file_name = btnid.split('-');     string tbid = file_name[0] + "-tb";     string grade = ((textbox)filestablesph.findcontrol(tbid)).text;     scriptmanager.registerclientscriptblock(this, this.gettype(), "alertmessage", "alert("+grade+")", true); } 

Comments

Popular posts from this blog

node.js - Using Node without global install -

How to access a php class file from PHPFox framework into javascript code written in simple HTML file? -

java - Null response to php query in android, even though php works properly -