c# - How to sort records in grid view on click of header of a column -
i wanted sort grid view column when user clicks on column header. here user can click column , grid view sorted based on column clicked. code:
<asp:gridview id="gvemployeestatus" runat="server" autogeneratecolumns="false" allowpaging="true" pagesize="10" allowsorting="true" onpageindexchanging="gvemployeestatus_pageindexchanging" onsorting="gvemployeestatus_sorting" > protected void gvemployeestatus_sorting(object sender, gridviewsorteventargs e) { loginname = (string)(session["loginname"]); dslogindetail = clsblogic.tbllogin(loginname); tblemployeeno = dslogindetail.tables[0].rows[0]["employeeno"].tostring(); binddatatogvemployeestatus(tblemployeeno); datatable datatable = gvemployeestatus.datasource datatable; if(datatable != null) { dataview dataview = new dataview(datatable); dataview.sort = e.sortexpression + " " + convertsortdirection(e.sortdirection); gvemployeestatus.datasource = dataview; gvemployeestatus.databind(); } } private string convertsortdirection(sortdirection sortdirection) { string newsortdirection = string.empty; switch (sortdirection) { case sortdirection.ascending: newsortdirection = "asc"; break; case sortdirection.descending: newsortdirection = "desc"; break; } homecoming newsortdirection; }
record in grid view comes info set. when run code, nil happens. had set break point on gvemployeestatus_sorting event check when fired. it not beingness fired. how can sort records!!
as u mentioned sorting not triggered, guess missing attribute sortexpression
in <asp:templatefield> or <asp:boundfield>
for example,
<asp:templatefield headertext="your header 1" sortexpression="columname1">
or
<asp:boundfield datafield="your header 1" headertext="your header 1" sortexpression="columname1" />
c# asp.net dataset
No comments:
Post a Comment