思路:记录排序的字段和方式(升降)
每次绑定根据这个来在SQL语句中order by XX desc/asc
举例:得到dv.Sort=当前排序的字段,判断升降,然后在sql语句中写即可

解决方案 »

  1.   

    太过复杂啊,点了A字段,又点了B字段,CDE……,再回来点A,再点D,那样记录下来的话,工作太多了。DataGrid1本身没有我要的这个功能 ?
      

  2.   

    应该没有,你可以写个排序的函数,然后将要排序的字段作为参数传进去,在其中设个int变量作为记数器就可以了,奇数正排,偶数倒排
      

  3.   

    同意楼上的,用判断字来处理,true就desc,false就asc,要设置为类变量噢
    如果每个字段都要用的话,就用一个数组喽,呵呵·
      

  4.   

    Private Sub grdSuppliers_SortCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridSortCommandEventArgs) Handles grdSuppliers.SortCommand
                If lblSortColumn.Text = e.SortExpression Then
                    If lblSortOrder.Text = "DESC" Then
                        lblSortOrder.Text = "ASC"
                    Else
                        If lblSortOrder.Text = "ASC" Then lblSortOrder.Text = "DESC"
                    End If
                Else
                    lblSortColumn.Text = e.SortExpression
                    lblSortOrder.Text = "ASC"
                End If
                BindData()
      End Sub
    sub BindData()

    …………………                    grdSuppliers.DataSource = dv;
    dv.Sort=lblSortOrder.Text                    grdSuppliers.DataBind ()
    End sub
    自己转换成C#代码吧