国产探花免费观看_亚洲丰满少妇自慰呻吟_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";
  }
 }


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 马龙县| 文成县| 旺苍县| 西平县| 东明县| 玛曲县| 冷水江市| 颍上县| 新乐市| 贞丰县| 股票| 普陀区| 涟源市| 新安县| 拉萨市| 鄂温| 南乐县| 伊宁市| 山西省| 明星| 盐边县| 稻城县| 永和县| 财经| 西贡区| 德安县| 晋城| 彭山县| 莎车县| 澜沧| 淅川县| 锡林浩特市| 扎兰屯市| 治多县| 桂平市| 蓬莱市| 应用必备| 利川市| 揭西县| 玉溪市| 大冶市|