Monday, March 09th, 2009 | Author: admin
Sort and page the results
public SortDirection SortDir { get { if (ViewState["sortDirection"] == null) { ViewState["sortDirection"] = SortDirection.Ascending; } return (SortDirection)ViewState["sortDirection"]; } set { ViewState["sortDirection"] = value; } } DataSet ds = new DataSet(); DataView dv = new DataView(); protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { BindGrid(); GridView1.DataSource = dv; GridView1.DataBind(); } } private DataView BindGrid() { ds = new Query(AnthemWeb.DAL.Item.Schema).ExecuteDataSet(); if (ViewState["sortExpr"] != null) { dv = new DataView(ds.Tables[0]); dv.Sort = (string)ViewState["sortExpr"]; } else { dv = ds.Tables[0].DefaultView; } return dv; } protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) { GridView1.PageIndex = e.NewPageIndex; GridView1.DataSource = BindGrid(); GridView1.DataBind(); } protected void GridView1_Sorting(object sender, GridViewSortEventArgs e) { string stExp = e.SortExpression; string stDir = string.Empty; if (SortDir == SortDirection.Ascending) { SortDir = SortDirection.Descending; stDir = "DESC"; } else { SortDir = SortDirection.Ascending; stDir = "ASC"; } ViewState["sortExpr"] = e.SortExpression + " " + stDir; GridView1.DataSource = BindGrid(); GridView1.DataBind(); } protected void GridView1_SelectedIndexChanged(object sender, EventArgs e) { int selectedRowIndex; selectedRowIndex = GridView1.SelectedIndex; GridViewRow row = GridView1.Rows[selectedRowIndex]; string ID = row.Cells[0].Text; Response.Redirect("customer-details.aspx?ID=" + ID, false); } protected void btnSearch_Click(object sender, EventArgs e) { BindGrid(); }
