GridView 控件可以自动向 ObjectDataSource 控件传递排序参数。在将支持排序的数据绑定控件绑定到 ObjectDataSource 控件时,该数据绑定控件将传递一个排序表达式,标识要用于对结果进行排序的数据列。例如,GridView 控件通过其 SortExpression 属性传递排序值。ObjectDataSource 控件基于为其传递的排序表达式,设置由 SortParameterName 属性所标识的参数的值。排序表达式可指定一个以上的列;指定多个列时,列名以逗号分隔。若要指定按降序排序,可以在排序表达式的排序列名称后加上 DESC 修饰符。例如,对于将 LastName 和 FirstName 列标识为排序依据列的排列表达式,使用“LastName, FirstName”可以按升序排序,使用“LastName, FirstName DESC”可以按降序排序。在网上找到了这段解说,但是 不是很理解,谁能具体讲解下,谁有这种代码能提供下参考的!!!谢谢各位大神了,小弟不胜感激~~~~

解决方案 »

  1.   

    点击列名 让其排序 我有思路你参考下吧把列名变成按钮, 触发事件,后台 重新给gridview 绑定 数据源, 
     然后你从数据库 select * from 表名 order by 列名 desc  
      

  2.   

    DELETE FROM Student WHERE (student_ID = @student_ID)我以前做的 objectdatasource里面的delete语句
    你那段话的意思是不是这样呢
    select * from student order by @SortParameterName descSortParameterName  是不是 将对应列名绑定到语句 中 然后操作。 我是这么理解的,你参考下
      

  3.   

    思路是这样的没错,但是具体应该怎么去实现呢,首先gridview的数据绑定如何做成按钮,objectdatasource又如何去获取参数呢?
      

  4.   

    首先 你要让列名 变成button 而不是整个列。 (这一步你应该懂吧) 然后对应的 按钮里面 再去操作,
    每个按钮里面都有一个string变量(如 str) str=列名 每个按钮里面对应你数据库中相应列名,再把str
    传入 DAL层的 sql语句中 “select * from 表名 order by “+str+” desc” 这样就好了