Private Sub LVL_ColumnClick(ByVal ColumnHeader As MSComctlLib.ColumnHeader) On Error GoTo errline LVL.SortKey = ColumnHeader.Index - 1 If order Then LVL.SortOrder = lvwAscending order = False Else LVL.SortOrder = lvwDescending order = True End If
LVL.Sorted = True Exit Sub errline: MsgBox Err.Description, vbExclamation End Sub
On Error GoTo errline
LVL.SortKey = ColumnHeader.Index - 1
If order Then
LVL.SortOrder = lvwAscending
order = False
Else
LVL.SortOrder = lvwDescending
order = True
End If
LVL.Sorted = True
Exit Sub
errline:
MsgBox Err.Description, vbExclamation
End Sub
先将Listview清空倒是能解决问题,但我这个里面的记录有上千条,每次清空再读出效率太低,而且显示结果明显有晃动。
那位建议用API的老兄,能否说的详细些?
日期排序也很简单,用规范成 YYYY-MM-DD格式就可以。