DataGrid双向排序

原创 2006年05月18日 10:52:00

<HTML>相关脚本

<asp:datagrid id="dgd" runat="server" DataKeyField="Id" CellPadding="0" BorderColor="#BAC9DC"
                    AutoGenerateColumns="False" Width="100%" AllowSorting="True">
                    <AlternatingItemStyle CssClass="AlternatingItem"></AlternatingItemStyle>
                    <ItemStyle CssClass="item"></ItemStyle>
                    <HeaderStyle CssClass="header"></HeaderStyle>
                    <Columns>
                     <asp:BoundColumn DataField="Id" SortExpression="Id" HeaderStyle-ForeColor="#000000" HeaderText="编号"></asp:BoundColumn>
                     <asp:BoundColumn DataField="Name" SortExpression="Name" HeaderStyle-ForeColor="#000000" HeaderText="名称"></asp:BoundColumn>

                        </Columns>
                   </asp:datagrid>

 

 

.cs代码

// 在此处放置用户代码以初始化页面
   if( !this.IsPostBack)
   {
    if(this.dgd.Attributes["SortExpression"]==null) //这里dgd为datagrid   ID
    {
     this.dgd.Attributes["SortExpression"]="Id";  //这里给datagrid增加一个排序属性,且默认排序表达式;
     dgd.Attributes["SortDirection"]="ASC"; //这里给datagrid增加一个排序方向属性,且默认为升序排列;
    } 
    
    this.Query();    
   }

 

#region 查询并并绑定数据。  
  private void InternalQuery()
  { 
   //设定导入的起终地址   
   int startIndex = this.CurrentPageIndex * this.PageSize;
   try
   {     
    //初始化所建表的SQL语句

    string strSel = "SELECT  ID,Name  FROM  XTABLE    " ;
    DataSet ds = new DataSet();    
    SqlDataAdapter MyAdapter = new SqlDataAdapter(strSel,conn);
    MyAdapter.Fill(ds,startIndex,PageSize,"XTABLE"); 
    
    
    DataView dv=new DataView();
    string SortExpression=dgd.Attributes["SortExpression"];
    string SortDirection=dgd.Attributes["SortDirection"];
    dv=ds.Tables["loyor"].DefaultView;    //来自web service的dataset,这里随便一个ds就可以;
    dv.Sort=SortExpression+" "+SortDirection; //指定视图的排序方式;
    dgd.DataSource=dv; //指定数据源
    conn.Close();         
   }
   catch(Exception exc)
   {
    string s = exc.ToString();
   }
   
   this.dgd.DataBind();  
  }

排序

 private void dgd_SortCommand(object source, System.Web.UI.WebControls.DataGridSortCommandEventArgs e)
  {
   string SortExpression=e.SortExpression.ToString();  //获得当前排序表达式
   string SortDirection="ASC"; //为排序方向变量赋初值
   if(SortExpression==dgd.Attributes["SortExpression"])  //如果为当前排序列
   {
    SortDirection=(dgd.Attributes["SortDirection"].ToString()==SortDirection?"DESC":"ASC");     //获得下一次的排序状态

   }
   dgd.Attributes["SortExpression"]=SortExpression;
   dgd.Attributes["SortDirection"]=SortDirection;
   this.InternalQuery();
  }   

以上可以实现点击datagrid的标题栏任一列,实现双向排序

jquery easyui dataGrid动态改变排序字段名

jquery easyui dataGrid 动态改变排序字段名,一般情况下,在使用的时候,我们会点击相应字段进行排序, 这里以JAVA为例,后端的实体类字段有可能和数据库的字段不一致; 如:实体类...
  • lht0211
  • lht0211
  • 2015年04月30日 15:50
  • 3938

easyui datagrid本地分页排序

html代码 加载数据 js代码 var listData = []; $(function(){ $('#dg').datagr
  • lnkToKing
  • lnkToKing
  • 2016年11月18日 10:45
  • 1660

EasyUI Datagrid 前端按数字排序(自定义排序)

EasyUI Datagrid 前端排序默认采用字符串排序。有时候我们为了确保Datagrid里显示的数字精确到一定位数,会将数据转换为字符串传到前台。例如我们规定价格都精确到两位小数,那么22就转换...
  • h4x0r_007
  • h4x0r_007
  • 2013年11月04日 13:26
  • 9055

dataGrid中文排序

  • 2013年04月25日 11:00
  • 50KB
  • 下载

ajax datagrid 支持排序,拖拽改列宽,Json填充,定义任意列格式

  • 2009年03月22日 13:40
  • 39KB
  • 下载

datagrid排序_选择_分页

  • 2009年11月16日 19:09
  • 4KB
  • 下载

XP 风格的可拖动列、可排序、可改变宽度的DataGrid的例子

  • 2007年11月30日 19:26
  • 268KB
  • 下载

DataGrid可调整列宽的表格可排序

  • 2016年02月19日 11:30
  • 59KB
  • 下载

easyUI datagrid 实现行上移,下移,置顶,置底,排序提交后台绑定键盘事件

  • 2017年08月18日 19:43
  • 5KB
  • 下载

排序树 变成双向链表

  • 2014年09月14日 20:58
  • 521B
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:DataGrid双向排序
举报原因:
原因补充:

(最多只允许输入30个字)