在利用Listview控件显示报表型的数据时,可能通过单击Listview控件的列标题对列表数据进行排序,真的非常的方便,代码如下:
Private Sub ListView1_ColumnClick(ByVal ColumnHeader As MSComctlLib.ColumnHeader)
With me.ListView1

.Sorted = True
.SortOrder = (.SortOrder + 1) Mod 2
.SortKey = ColumnHeader.Index - 1
End With
End Sub
代码截图:
在讲解上述几个代码之前,我们先看看几个必要的属性设置的讲解。
1 Listview控件的Sorted属性返回或设置确定ListView控件中的ListItem工具是否排序,设置为False则不进行排序。
2 SortOrder属性返回或设置一个值,决定ListView控件中的ListItem工具以升序或降序排序,设置为0以升序排序,设置为1则以降序排序。
3 SortKey属性返回或设置一个值,此值决定ListView控件中的ListItem工具如何排序,语法如下:object.SortKey [=integer]
参数object是必须的,工具表达式,其值为ListView控件。
参数integer是必须的,指定排序关键字的整数,设置为0利用ListItem工具的Text属性排序,即第一列的数据进行排序。设置为大于0的整数则利用子项目的凑集索引排序。
有了上面的属性的知识,我们来看下面的代码讲解就随意马虎多了。
代码解析:Listview控件的ColumnClick事宜过程,单击列标题时触发,对列表数据进行升序或降序排序。
第3行代码将Listview控件的Sorted属性设置为True。即表明许可排序。
第4行代码设置Listview控件的排序办法。这里是按照MOD运算来设置的,在设置SortOrder属性值时利用Mod运算符的目的是,到第一次排序以降序排序,再次排序时以升序排序,交替进行的效果。这样可以设置可以给操作带来方便。
第5行代码设置Listview控件排序关键字的整数,即指定Listview控件以当前选定的列数据进排序。
运行窗体,Listview控件显示事情表中的内容,单击列标题对列表数据进行升序或降序排序。
运行截图:
单击一下名称:
再次单击:
今日内容回向:
1 如何实现Listview控件的排序呢?
2 上述方法排序有个最大弊端,你是否意识到了呢?如何办理