protected void GridView1_Sorting(object sender, GridViewSortEventArgs e)
{
//利用 dataset 將資料存入,再以datatable先行排序再綁定gridview
dt = Session["test"] as DataTable;
dt.DefaultView.Sort = e.SortExpression + " " + getSortDirection(e.SortExpression);
GridView1.DataSource = dt;
GridView1.DataBind();
}
private string getSortDirection(string p)
{
string sortDirection = "ASC";
string sortExpression = ViewState["SortExpression"] as string;
if (ViewState["SortExpression"] != null)
{
if (sortExpression == p)
{
string lastSortDirection = ViewState["SortDirection"] as string;
if (lastSortDirection != null && lastSortDirection == "ASC")
{
sortDirection = "DESC";
}
}
}
ViewState["SortExpression"] = p;
ViewState["SortDirection"] = sortDirection;
return sortDirection;
}