c# - How to reference value of dynamic field in asp modalpopup -


i have modalpopup extender shown when user clicks 'add' button. can create dynamic textbox on popup.

my problem can't reference textbox in codebehind.

i have added 'textchanged' event handler textbox since needs autopostback = true (i think), modalpopup destroyed before event fires! , if reshow modalpopup dynamic field gone.

here asp modalpopup:

<asp:modalpopupextender id="paydetail_modalpopupextender" runat="server" popupcontrolid="paydetailpopuppanel" targetcontrolid="btnshowdetailpopup"                     cancelcontrolid="btnclosepaydetail" backgroundcssclass="modalbackground">  </asp:modalpopupextender>   <asp:button id="btnshowdetailpopup" runat="server" style="display:none" />  <asp:panel id="paydetailpopuppanel" runat="server" cssclass="modalpaypopup" align="center" style = "display:none">                         <asp:table id="addclaimdetailtable" runat="server" class="table" >                             <asp:tablerow style="display:none">                                 <asp:tablecell >                                     <asp:label id="lblpayheaderid" runat="server" text="pay header id:"></asp:label>                                 </asp:tablecell>                                 <asp:tablecell >                                      <asp:textbox id="txtpayheaderid" runat="server" enabled="false"></asp:textbox>                                 </asp:tablecell>                             </asp:tablerow>                         </asp:table>  </asp:panel> 

i creating dynamic textbox in codebehind this:

        //add dynamic fields         tablerow trow = new tablerow(); //row         tablecell hcell = new tablecell(); //header         tablecell dcell = new tablecell(); //data          label lblheader = new label();         lblheader.id = "lblmedicare";         lblheader.text = "medicare:";         textbox txtdata = new textbox();         txtdata.id = "txtmedicare";         txtdata.text = "";         txtdata.textchanged += new eventhandler(txtdata_textchanged);         txtdata.autopostback = true;         //and add list         paydetaildynamiclist.add(txtdata);         //myvalue = txtdata.id;           hcell.controls.add(lblheader);         dcell.controls.add(txtdata);         trow.controls.add(hcell);         trow.controls.add(dcell);          addclaimdetailtable.controls.add(trow); 

i storing textbox in static list:

     static list<textbox> paydetaildynamiclist = new list<textbox>(); 

here codebehind eventhandler:

    void txtdata_textchanged(object sender, eventargs e)     {         textbox t = sender textbox;          if (t == null)             throw new argumentexception("sender not textbox", "sender");          //add value list?         string value = t.text;         string id = t.id;     } 

my question is: how can eventhandler store user entered data? or how can reference dynamic textbox can retrieve value?

is there better way this? use form modalpopup? if knew jquery , ajax dynamic fields way don't...

any appreciated! let me know if need more details... thanks!

in case

textbox mytextbox = paydetail_modalpopupextender.findcontrol("txtmedicare") textbox; 

here information control.findcontrol https://msdn.microsoft.com/en-us/library/486wc64h(v=vs.110).aspx