C# ListView_winform数据库增删改查

C# ListView_winform数据库增删改查C#winform中listview排序本文解决方案是采用下面链接中的解决方案。十分感谢这篇文章的作者bright:http://blog.163.com/shensc@126/blog/static/1312896522010614103538287/看到网上的许多解决方案(其实就是一种,只不过被转载和粘贴,所以没什么用。同时那么多的代码居然屌用没有(原谅我说脏话了)(

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

Jetbrains全系列IDE稳定放心使用

C# winform中listview排序

本文解决方案是采用下面链接中的解决方案。十分感谢这篇文章的作者bright:http://blog.163.com/shensc@126/blog/static/1312896522010614103538287/

看到网上的许多解决方案(其实就是一种,只不过被转载和粘贴,所以没什么用。同时那么多的代码居然屌用没有(原谅我说脏话了)(那种方法的解决方案是这样的https://support.microsoft.com/en-us/kb/319401)。最后终于在一篇网易博客上找到了解决方案。

这里转一下方案以便自己查找:

先创建一个类:ListViewColumnSorter继承自:IComparer

整个类代码如下:

复制代码
 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Collections;
 6 using System.Windows.Forms;
 7 
 8 namespace WindowsFormsApplication3
 9 {
10     //class ListViewColumnSorter: IComparer
11     //{

12     /// <summary>
13     /// This class is an implementation of the 'IComparer' interface.
14     /// </summary>
15    // public class ListViewColumnSorter : IComparer
16     //{

17         /// <summary>
18         /// Author:沈舜聪
19         /// CreateDate:2010-07-13
20         /// Description:ListView控件排序比较器
21         /// </summary>
22         public class ListViewItemComparer : IComparer
23         {
24             private int col;
25             public int Compare(object x, object y) 
26             {
27                 int returnVal = -1;
28                 returnVal = String.Compare(((ListViewItem)x).SubItems[col].Text,
29                 ((ListViewItem)y).SubItems[col].Text);
30                 return returnVal;
31             }
32         }
33 }
复制代码

listview的头click事件如下:

复制代码
1 private void listView1_ColumnClick(object sender, ColumnClickEventArgs e)
2         {
3 
4             this.listView1.ListViewItemSorter = new ListViewItemComparer();
5             // Call the sort method to manually sort.
6             listView1.Sort();
7         }
复制代码

以上我转载自网络,来源:http://www.cnblogs.com/hellochenchen/p/5415639.html

C# ListView_winform数据库增删改查

进行上面代码测试的时候,我发现效果并未像我想象的一样,是按大小排序的,而是按数字的第一个数排序的,这当然不是我要的效果,研究了一下原作者的代码,后边稍微改了一下代码,完成了我要的效果。下面贴上代码

    public class ListViewItemComparer : IComparer    {        private int col=0;        public int Compare(object x, object y)        {            int returnVal = -1;            returnVal = String.Compare(((ListViewItem)x).SubItems[col].Name,            ((ListViewItem)y).SubItems[col].Name);            return returnVal;        }    }

只是将SubItems[col].Text改成了Name,就达到了我要的结果。 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/186337.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • java 静态变量 存储_java中,类的静态变量如果是对象,该对象将存储在内存的哪个区域?…

    java 静态变量 存储_java中,类的静态变量如果是对象,该对象将存储在内存的哪个区域?…静态变量所引用的实例位于Java堆或运行时常量池。Java字节码与Native机器码不同,字节码是运行在JVM这一平台上的,字节码在被解释的过程中,具体的执行方式因JVM的不同实现而不同,但是对于JVM来说,它的各种不同实现都必须要遵循Java虚拟机规范。JVM的运行时数据区包含以下部分:1、PC寄存器每一条Java虚拟机线程都有自己的PC寄存器,如果正在被线程执行的当前方法不是native的,那…

  • pyqt5开发的漂亮界面_pyqt5美化包

    pyqt5开发的漂亮界面_pyqt5美化包今天闲来无事,用python写了一个抽奖程序pyqt版本:pyqt5python版本:3.6.6下面直接上代码,有建议的话,欢迎大家交流评论!#-*-coding:utf-8-*-#Formimplementationgeneratedfromreadinguifile’Lucky_draw.ui’##Createdby:PyQt5UIcodegenerator5.15.1##WARNING:Anymanualchangesmadeto

  • Linux基础篇——Linux磁盘操作(磁盘基础知识、分类、分区、挂载、卸载、扩容)详解「建议收藏」

    Linux基础篇——Linux磁盘操作(磁盘基础知识、分类、分区、挂载、卸载、扩容)详解「建议收藏」目录1.概念1.概念图1.1分区的概念与好处  假如你有个大木桶要装东西,如果木桶没有划分层,所有东西全部放入里面,虽然可以装,但是对大木桶的使用就合不合理,造成杂乱无章,寻找东西时候也耗时,甚至还有不同物品之间不能存放在一起而导致危险,那更好的做法自然是给大木桶画一下不同的区域,分成不同的层,每个层放不同的东西,即安全,寻找起来也方便;  计算机的磁盘(也叫硬盘)也是如此,为了区分存储内容的不同,以及快速定位寻址文件,也需要采取分区的形式;…

  • Oracle ORA-01017 报错处理

    Oracle ORA-01017 报错处理Oracle ORA-01017报错处理背景: 通过toad连接Oracle11gRAC数据库是,发现通过sys用户连接总是报ORA-01017错误,tnsping连接名称是通的,其他用户连接是正常的,反复输入sys账户信息,总提示:1.尝试改sys用户密码,重试报错依旧。 2.使用sys登录GC,报错相同。使用普通用户登录正常。 3.数据库服务器上使用sqlplus

  • 微信公众号支付开发全过程(Java 版)

    微信公众号支付开发全过程(Java 版)

发表回复

您的电子邮箱地址不会被公开。

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