Private Sub dtgResult_HeadClick(ByVal ColIndex As Integer)
Static lastField As String
SetDataGrid
'//点击表格的相应字段标题,可进行排序
If lastField = dtgResult.Columns(ColIndex).DataField Then
    rsRepair.Sort = dtgResult.Columns(ColIndex).DataField & " DESC"
    lastField = dtgResult.Columns(ColIndex).DataField & " DESC"
Else
    rsRepair.Sort = dtgResult.Columns(ColIndex).DataField
    lastField = dtgResult.Columns(ColIndex).DataField
End If
End Sub

解决方案 »

  1.   

    adodc1.recordsource="select * from table1 order by id adc"
      

  2.   

    Private Sub DataGrid1_HeadClick(ByVal ColIndex As Integer)
       Dim test As String
       Static Index As Integer
       Static mode As String
       If Not TreeView1.SelectedItem Is Nothing Then
          test = DataGrid1.Columns(ColIndex).DataField
        
          If Adodcdata.Recordset.Fields.Item(test).Type = 201 Then Exit Sub
          
          If Index = ColIndex Then
             mode = IIf(mode = " ASC", " DESC", " ASC")
          Else
             mode = " ASC"
          End If
          
          Adodcdata.Recordset.Sort = test + mode
          
          Index = ColIndex
       End If
    End Sub
      

  3.   

    Private Sub DataGrid1_HeadClick(ByVal ColIndex As Integer)
    Select Case ColIndex
      Case 1
       Adodc1.Recordset.Sort = "ID"
      Case 2
       Adodc1.Recordset.Sort = "name"
    End Select
    End Sub
      

  4.   

    forever_chang(沙漠之猴) 说的完全正确,我试过了,可以的。
    就是不知道你程序里的setdatagrid是什么意思。
      

  5.   

    排序有几种Mode??
    如果设置升序或降序?