ListView 排序问题[通俗易懂]

ListView 排序问题[通俗易懂] 在DataGrid 中有自带的排序,但是在ListeView中却没有这一项,下面就给出我平时用的ListView的排序使用方法,给志同道合的朋友们参考参考:在ColumnClick事件下添加:其中要注意:intsortColumn=-1;其中sortColumn用来记录上次排序的列的索引privatevoidlistView1_ColumnClick(objectse

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

 


DataGrid 
中有自带的排序,但是在
ListeView
中却没有这一项,下面就给出我平时用的
ListView
的排序使用方法,给志同道合的朋友们参考参考:

ColumnClick
事件下添加:
其中要注意:
int sortColumn=-1;
其中
sortColumn
用来记录上次排序的列的索引
private
void listView1_ColumnClick(object sender, System.Windows.Forms.ColumnClickEventArgs e)
         {
              if(this.listView1.SelectedItems.Count!=0)
                   this.listView1.SelectedItems.Clear();
              if (e.Column != sortColumn)  //first use
              {
                   // Set the sort column to the new column.
                   sortColumn = e.Column;
                   // Set the sort order to ascending by default.
                   listView1.Sorting = SortOrder.Ascending;
              }
              else //second or more use
              {
                   // Determine what the last sort order was and change it.
                   if (listView1.Sorting == SortOrder.Ascending)
                       listView1.Sorting = SortOrder.Descending;
                   else
                       listView1.Sorting = SortOrder.Ascending;
              }
 
              // Call the sort method to manually sort.
              listView1.Sort();
              // Set the ListViewItemSorter property to a new ListViewItemComparer
              // object.
              this.listView1.ListViewItemSorter = new ListViewItemComparer(e.Column,
                   listView1.Sorting);// ListViewItemCompare
r
要用到下面的类
         }
一个新的类
class
ListViewItemComparer : IComparer
         {
              private int col;
              private SortOrder order;
              public ListViewItemComparer()
              {
                   col=0;
                   order = SortOrder.Ascending;
              }
              public ListViewItemComparer(int column, SortOrder order)
              {
                   col=column;
                   this.order = order;
              }
              public int Compare(object x, object y)
              {
                   int returnVal= -1;
                   returnVal = String.Compare(((ListViewItem)x).SubItems[col].Text,
                       ((ListViewItem)y).SubItems[col].Text);
                   // Determine whether the sort order is descending.
                   if(order == SortOrder.Descending)
                       // Invert the value returned by String.Compare.
                       returnVal *= -1 ;
                   return returnVal;
              }
         }
 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/186396.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • PHP中间件 middleware,middleware 中间件详解

    PHP中间件 middleware,middleware 中间件详解如果感觉这篇文章有用请点个赞 让我知道自己的努力不白费 中间件是请求必经之处 所以此处能对请求的数据做一系列处理 相当于过滤器 例如跨域请求 验证会员是否登录跳转至登录页 前后端分离数据类型不一致 防御 xss 脚本攻击等 这些作者都用过 所以感觉很好用 1 生成中间件 phpartisanma middlewareUs 中间件名 2 在 app http kernel

    2026年1月16日
    1
  • AT24C02的使用说明和完整代码-51单片机

    AT24C02的使用说明和完整代码-51单片机EEROM AT24C02 的使用说明和参考代码 at24c02 的原理及使用方法在其说明资料中已有充分的讲述 本篇仅对其使用的关键步骤进行罗列 以及说明一下具体的使用代码 at24c02 使用 iic 驱动 需要对其进行启动 停止 等待相应 写字节 读字节的操作 iic 启动

    2025年10月1日
    3
  • 下载速度

    下载速度

    2021年7月1日
    86
  • 消息队列 rabbitmq面试题(中间件面试题)

    文章目录为什么使用MQ?MQ的优点消息队列有什么优缺点?RabbitMQ有什么优缺点?你们公司生产环境用的是什么消息中间件?Kafka、ActiveMQ、RabbitMQ、RocketMQ有什么优缺点?MQ有哪些常见问题?如何解决这些问题?什么是RabbitMQ?rabbitmq的使用场景RabbitMQ基本概念RabbitMQ的工作模式如何保证RabbitMQ消息的顺序性?消息如何分发?消…

    2022年4月14日
    61
  • 如何查看tomcat版本_tomcat修改端口号

    如何查看tomcat版本_tomcat修改端口号一、通过tomcat版本文件查看  找到tomcat目录,进入”xxx/tomcat/bin”目录,执行”shversion.sh”。如果没有设置JAVA_HOME和JRE_HOME环境变量则会报如下错误:[jieyu.ljy@tripco011182064160.na62xxx/tomcat/bin]$shversion.shNeithertheJAVA_HOMEn…

    2022年9月1日
    6
  • kali密码爆破工具_目录对比工具

    kali密码爆破工具_目录对比工具一、下载与安装百度云下载链接:https://pan.baidu.com/s/1Df4wJy2jZ3kRx_aROWy1PQ(提取码:vfcn) 下载之后解压然后使用工具将解压后的目录移动到Linux中(此处我们选择Kali)进入dirsearch-maser目录之后,其中的“dirsearch.py”就是我们可以使用的dirsearch工具,但是我们没有权限执行该文件,所以需…

    2022年10月5日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号