我使用此 MSDN 链接中的代码在我的 GridView 上实现了排序,其中 DataTable 作为 DataSource 。但是,当我单击任何列时,我的网格第一次排序,之后它不会在单击任何其他列时排序。
PageLoad() 事件中的代码 -
if (!Page.IsPostBack)
{
HView hv = new HView ();
DataTable HTable = new DataTable("hTable");
HTable = hv.FillTable();
Session["hTable"] = HTable;
GridView2.DataSource = Session["hTable"];
GridView2.DataBind();
}
排序事件中的代码 -
protected void GridView2_Sorting(object sender, GridViewSortEventArgs e)
{
DataTable notesDT = Session["hTable"] as DataTable;
if (notesDT != null)
{
notesDT.DefaultView.Sort = e.SortExpression + " " + GetSortDirection(e.SortDirection);
GridView2.DataSource = Session["hTable"];
GridView2.DataBind();
}
}
有人知道我可能做错了什么吗?