国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

C#中實現DataGrid雙向排序

2019-11-18 19:18:39
字體:
來源:轉載
供稿:網友

  在.Net 中 DataGrid 雖然有排序的功能,但并不支持雙向的排序。用到了,看了些相關的帖子,自己嘗試了一種方法,竟然也行得通,主要是用DataGrid.Attributes 存了一個參數,同時在onSortCommand中修改了DataGridColumn的SortExPRession. 代碼如下:

private void BindData()
{
 DataTable dt = .......;
 if(dt != null)
 {
  DataView dv = dt.DefaultView;
  if(DataGrid1.Attributes["SortBy"] != null)
  {
   dv.Sort = DataGrid1.Attributes["SortBy"];
  }

  DataGrid1.DataSource = dv;
  DataGrid1.DataBind();
 }
}

private void DataGridSort(object source, System.Web.UI.WebControls.DataGridSortCommandEventArgs e)
{
 DataGrid1.Attributes["SortBy"] = sortstr;
 this.BindData();

 //找到排序的列,并修改把它的排序屬性

 DataGridColumn clm = null;

 for(int i=0;i<DataGrid1.Columns.Count;i++)
 {
  if(DataGrid1.Columns[i].SortExpression == e.SortExpression )
  {
   clm = DataGrid1.Columns[i];
   break;
  }
 }

 if(clm == null) return;

 if(e.SortExpression.ToLower().IndexOf("desc") > 0)
 {
  clm.SortExpression = e.SortExpression.ToLower().Replace("desc","asc");
 }
 else
 {
  if(e.SortExpression.ToLower().IndexOf("asc") > 0)
  {
   clm.SortExpression = e.SortExpression.ToLower().Replace("asc","desc");
  }
  else
  {
   clm.SortExpression = e.SortExpression.ToLower() + " desc";
  }
 }


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 鸡泽县| 保山市| 福建省| 锡林郭勒盟| 宾川县| 安国市| 宜黄县| 若羌县| 新宁县| 东兰县| 奉节县| 离岛区| 靖边县| 涞水县| 宁远县| 云林县| 门源| 南昌市| 孟村| 苏尼特右旗| 宝坻区| 蒙城县| 庐江县| 莆田市| 高碑店市| 象山县| 闽侯县| 马边| 铜梁县| 铜陵市| 迁安市| 盐边县| 高清| 乌海市| 进贤县| 菏泽市| 岳普湖县| 阳朔县| 皋兰县| 贵南县| 蒙自县|