Sorting In GridView
On Gridview Field assign Sortexpression properties = Field Name
GridView Sorting Event:
protected void grddmndsetup_Sorting(object sender, GridViewSortEventArgs e)
{
DMNDRATEBLL obj_DMNDRATEBLL = new DMNDRATEBLL();
obj_DMNDRATEBLL.DmndRate_Id = 0;
obj_DMNDRATEBLL.DmndRate_Clarity = 0;
obj_DMNDRATEBLL.DmndRate_Shape = 0;
obj_DMNDRATEBLL.Dmnd_Rate = 0;
obj_DMNDRATEBLL.DmndRate_Color = 0;
obj_DMNDRATEBLL.DmndRate_WtEndrange = 0;
obj_DMNDRATEBLL.DmndRate_WtStartrange = 0;
obj_DMNDRATEBLL.DmndRate_Date = Convert.ToDateTime(“12/1/2000″);
obj_DMNDRATEBLL.Is_Show = true;
DataTable dt = obj_DMNDRATEBLL.GET_DMNDRATE();
dt.DefaultView.Sort = e.SortExpression + ” ” + GetSortDirection(e.SortExpression);
grddmndsetup.DataSource = dt;
grddmndsetup.DataBind();
}
Create a Getdirection function:
private string GetSortDirection(string column)
{
// By default, set the sort direction to ascending.
string sortDirection = “ASC”;
// Retrieve the last column that was sorted.
string sortExpression = ViewState[“SortExpression”] as string;
if (sortExpression != null)
{
// Check if the same column is being sorted.
// Otherwise, the default value can be returned.
if (sortExpression == column)
{
string lastDirection = ViewState[“SortDirection”] as string;
if ((lastDirection != null) && (lastDirection == “ASC”))
{
sortDirection = “DESC”;
}
}
}
// Save new values in ViewState.
ViewState[“SortDirection”] = sortDirection;
ViewState[“SortExpression”] = column;
return sortDirection;
}
}
}
