protected void GrdContactType_Sorting(object sender, GridViewSortEventArgs e) { // dont allow sorting if in edit mode if (GrdContactType.EditIndex >= 0) { return; } DataTable dataTable = Session["contacttype_data"] as DataTable; if (dataTable != null) { if (Session["contacttype_sortexpression"] == null) { Session["contacttype_sortexpression"] = ""; } DataView dataView = new DataView(dataTable); string[] sortData = Session["contacttype_sortexpression"].ToString().Trim().Split(' '); string newSortExpr = (e.SortExpression == sortData[0] && sortData[1] == "ASC") ? "DESC" : "ASC"; dataView.Sort = e.SortExpression + " " + newSortExpr; Session["contacttype_sortexpression"] = e.SortExpression + " " + newSortExpr; GrdContactType.DataSource = dataView; GrdContactType.DataBind(); } }
protected void FillContactTypeGrid() { DataTable dt_contact_type = ContactTypeDB.GetDataTable(-1); Session["contacttype_data"] = dt_contact_type; if (dt_contact_type.Rows.Count > 0) { if (IsPostBack && Session["contacttype_sortexpression"] != null && Session["contacttype_sortexpression"].ToString().Length > 0) { DataView dataView = new DataView(dt_contact_type); dataView.Sort = Session["contacttype_sortexpression"].ToString(); GrdContactType.DataSource = dataView; } else { GrdContactType.DataSource = dt_contact_type; } try { GrdContactType.DataBind(); } catch (Exception ex) { this.lblErrorMessage.Visible = true; this.lblErrorMessage.Text = ex.ToString(); } } else { dt_contact_type.Rows.Add(dt_contact_type.NewRow()); GrdContactType.DataSource = dt_contact_type; GrdContactType.DataBind(); int TotalColumns = GrdContactType.Rows[0].Cells.Count; GrdContactType.Rows[0].Cells.Clear(); GrdContactType.Rows[0].Cells.Add(new TableCell()); GrdContactType.Rows[0].Cells[0].ColumnSpan = TotalColumns; GrdContactType.Rows[0].Cells[0].Text = "No Record Found"; } }