asp.net - Data-bound RadioButtonList binding but now showing up in GridView -
i have gridview control column containing data-bound radiobuttonlist. rbl binding datatable not showing in gridview. adding listitems in markup show, , label control showing - did these 2 test. see i'm missing?
tia assistance. mike
markup:
<asp:templatefield headertext="preset text" headerstyle-horizontalalign="center"> <itemtemplate> <asp:radiobuttonlist id="rblpresettext" runat="server" datavaluefield="pkey" datatextfield="contents" groupname="presettext" repeatdirection="vertical"></asp:radiobuttonlist> </itemtemplate> </asp:templatefield>
codebehind:
protected sub page_load(sender object, e system.eventargs) handles me.load globalvar.loaddata(session("userpkey")) header1.connectionstr = globalvar.connectstring header1.hdlawfirm = globalvar.lawfirmdir if page.ispostback = false fillnotesdataset() bindnotesgrid() bindpresettextradiobuttonlist() end if end sub protected sub bindpresettextradiobuttonlist() dim dal new dataaccesslayer dim dtpresettext new datatable dim rblpresettext new radiobuttonlist dtpresettext = dal.gettextpickertextforuser(session("clientkey"), session("userpkey")) rblpresettext.datasource = dtpresettext rblpresettext.databind() end sub
you declare radiobuttonlist in templatefield but, instead of retrieving control each row, create new radiobuttonlist populate. since new control not included in container or in gridview, not show on page.
you can radiobuttonlist of templatefield in rowdatabound
event handler of gridview , bind data control:
protected void gridview_rowdatabound(object sender, gridviewroweventargs e) { if (e.row.rowtype == datacontrolrowtype.datarow) { radiobuttonlist rblpresettext = e.row.findcontrol("rblpresettext") radiobuttonlist; // bind data radiobuttonlist ... } }
Comments
Post a Comment