.SortOrder 
lvwAscending 0 (缺省)升序。从字母表首部 (A-Z) 或最早的日期开始排序。数字以字符串的形式排序,第一个数位决定排序的起始位置,其后的数位决定子排序。 
LvwDescending 1 降序。从字母表尾部 (Z-A) 或最晚的日期开始排序。数字以字符串的形式排序,第一个数位决定排序的起始位置,其后的数位决定子排序。 根据 SortOrder 指定的顺序将列表排序之前,Sorted 属性必须设置为 True。

解决方案 »

  1.   

    你是通过绑定添加的ListView还是循环添加?如果是绑定:可以在给ListView提供数据源时排一下序。让空的在前。如果是循环添加:也可以在SQL语句中添加排序。
      

  2.   

    说明:与SQL语句没有关系!产生在LISTVIEW中的数据是经过程序筛选出来的,明白?所以,革命尚未成功
      

  3.   

    换句话说:在我的LISTVEIW中要排序的这个字段根本不在SQL中,是后来经过判断后附加上去的!所以有些是空的,现在要把他排一下序让用户能一目了然!
      

  4.   

    我做的是点击Column排序, 你参照一下。
    Private Sub lvwData_ColumnClick(ByVal ColumnHeader As MSComctlLib.ColumnHeader)
        Dim lngCnt As Long
    On Error GoTo lvwData_ColumnClickErr    lvwData.SortKey = ColumnHeader.Index - 1
        lngCnt = ColumnHeader.Index - 1    If lvwData.SortOrder = lvwDescending Then        lvwData.SortOrder = lvwAscending
        Else        lvwData.SortOrder = lvwDescending
        End If
        lvwData.Sorted = True
        
    Exit_Proc:
        Exit Sub
    lvwData_ColumnClickErr:
         
        Resume Exit_Proc
    End Sub
      

  5.   

    你只要指定一下某一列的sort顺序就好了。
      

  6.   

    OK,你们的意思我明白了,但是我还有一个要求,刚才忘记提出来^_^
    就是这个排序要在LISTVIEW显示数据的同时就排序,不需要用户再去点一下Column,能做到吗?我试了一下,好象不行呀!望提示!