C# ListView 点击表头对数据进行排序功能的实现代码
添加表头单击事件
private void listView1_ColumnClick(object sender, ColumnClickEventArgs e) { if (listView1.Columns[e.Column].Tag == null) { listView1.Columns[e.Column].Tag = true; } bool tabK = (bool)listView1.Columns[e.Column].Tag; if (tabK) { listView1.Columns[e.Column].Tag = false; } else { listView1.Columns[e.Column].Tag = true; } listView1.ListViewItemSorter = new ListViewSort(e.Column, listView1.Columns[e.Column].Tag); //指定排序器并传送列索引与升序降序关键字 listView1.Sort();//对列表进行自定义排序 }
排序用到的类
public class ListViewSort : IComparer { private int col; private bool descK; public ListViewSort() { col = 0; } public ListViewSort(int column, object Desc) { descK = (bool)Desc; col = column; //当前列,0,1,2...,参数由ListView控件的ColumnClick事件传递 } public int Compare(object x, object y) { int tempInt = String.Compare(((ListViewItem)x).SubItems[col].Text, ((ListViewItem)y).SubItems[col].Text); if (descK) { return -tempInt; } else { return tempInt; } } }
注意:
有的会报“错误 CS0305: 使用泛型 类型“System.Collections.Generic.IComparer<T>”需要 1 个类型参数”
这时只需要using System.Collections.Generic;改为using System.Collections; 即可。
相关推荐
-
C#获取ListView鼠标下的Item实例
ListView在虚模式下,CheckBox无法点击,可以用此方法实现 private void lvwTitle_MouseDown(object sender, MouseEventArgs e) { Point curPos = this.lvwTitle.PointToClient(Control.MousePosition); ListViewItem lvwItem = this.lvwTitle.GetItemAt(curPos.X, curPos.Y); if (lvwItem
-
C# WPF ListView控件的实例详解
C# WPF ListView控件的实例详解 C#的WPF作为现在微软主流的桌面程序开发平台,相比过去的MFC时代,有了非常多的不同.本人刚从MFC平台转过来,以为可以轻松上手,哪知碰到了很多问题,十分不解.不得不乖乖回去看了本书,再继续回到边左边边学的路上.在这边也推荐<深入浅出WPF>这本书,拿来上手还是极好的. 由于WPF以数据驱动UI的设计理念,很多控件用起来都与之前平台的相差很多,ListView控件算是有代表性的,这是进化的成果.关于该控件的应该,很多参考了这篇博文,如觉本人记述不
-
C#实现读取DataSet数据并显示在ListView控件中的方法
本文实例讲述了C#实现读取DataSet数据并显示在ListView控件中的方法.分享给大家供大家参考.具体如下: /*lvStudentList为ListView控件名 */ DataSet ds = new DataSet(); ds = student.QueryStudents(); //查询表的信息 int rowCount, columnCount,i,j; rowCount = ds.Tables[0].Rows.Count; columnCount = ds.Tables[0].
-
C# listview 点击列头排序的实例
实例如下: #region 自定义变量 int currentCol = -1; bool sort; #endregion//列头点击事件 private void lvw_ColumnClick(object sender, ColumnClickEventArgs e) { string Asc = ((char)0x25bc).ToString().PadLeft(4, ' '); string Des = ((char)0x25b2).ToString().PadLeft(4, ' '
-
C#如何将Access中以时间段条件查询的数据添加到ListView中
一.让ListView控件显示表头的方法 在窗体中添加ListView 空间,其属性中设置:View属性设置为:Detail,Columns集合中添加表头中的文字. 二.利用代码给ListView添加Item. 首先,ListView的Item属性包括Items和SubItems.必须先实例化一个ListIteView对象.具体如下: ListViewItem listViewItem=new ListViewItem(); listViewItem.SubItems[0].Text="&quo
-
C#获取鼠标在listview右键点击单元格的内容方法
当我们右键点击listview控件时,可以得到选择的项的各个文本内容. 现在我们要求只获取右键点击时的单元格的文本内容. 方法如下: 1.定义全局的鼠标状态 Point m_MBRpt;//鼠标右键点击时Point 2.处理鼠标按下时在listView的消息 private void listView1_MouseDown(object sender, MouseEventArgs e) { // if (e.Button==MouseButtons.Right) { // 得到屏幕鼠标的坐标,
-
C#实现在listview中插入图片实例代码
C#实现在listview中插入图片实例代码 第一步:在窗体中拖入ListView控件和imageList控件: 第二步:设置imageList控件的Images属性,添加你想要的图片: 第三步:设置ListView控件的SmallImageList.LargeImageList.StateImageList属性为imageList: 第四步:编辑ListView控件项的ImageIndex行为你就会发现图片成功显示出来了! 附:在ListView控件中添加选项的代码 private void
-
C#下listview如何插入图片
如何在listview中插入图片,相信大家很想知道,下面就为大家分享具体步骤: 第一步:在窗体中拖入ListView控件和imageList控件: 第二步:设置imageList控件的Images属性,添加你想要的图片: 第三步:设置ListView控件的SmallImageList.LargeImageList.StateImageList属性为imageList: 第四步:编辑ListView控件项的ImageIndex行为你就会发现图片成功显示出来了! 附:在ListView控件中添加选项
-
C# ListView 点击表头对数据进行排序功能的实现代码
添加表头单击事件 private void listView1_ColumnClick(object sender, ColumnClickEventArgs e) { if (listView1.Columns[e.Column].Tag == null) { listView1.Columns[e.Column].Tag = true; } bool tabK = (bool)listView1.Columns[e.Column].Tag; if (tabK) { listView1.Col
-
Android 中TeaPickerView数据级联选择器功能的实例代码
Github地址 YangsBryant/TeaPickerView (Github排版比较好,建议进入这里查看详情,如果觉得好,点个star吧!) 引入module allprojects { repositories { google() jcenter() maven { url 'https://www.jitpack.io' } } } implementation 'com.github.YangsBryant:TeaPickerView:1.0.2' 主要代码 public cla
-
vue中选项卡点击切换且能滑动切换功能的实现代码
具体代码如下所述: <div> <div class="navlist"> <ul> <li class="navli" v-for="(item,index) in navList" :class="{'activeT':nowIndex===index}" @click="tabClick(index)"><i>{{item.name}}<
-
Android开发实现ListView点击展开收起效果示例
本文实例讲述了Android开发实现ListView点击展开收起效果.分享给大家供大家参考,具体如下: 废话不说先上效果: 实际上这是采用一个ExpandableListView实现的 布局文件很简单: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xm
-
JS实现的点击表头排序功能示例
本文实例讲述了JS实现的点击表头排序功能.分享给大家供大家参考,具体如下: 运行效果: 1.index.html文件: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html> <head> <title>jb51.net点击表头排序</t
-
table中点击表头实现排序的功能示例介绍
<a href="javascript:setOrder();">表头名字</a>,页面中获取上次点击的表头的名称和这次点击的表头的名称做比较,如果两者相同就按原先相反的顺序排列,否则新列升序排列, 获取排列顺序的列名及排列顺序以后,传到后台获取相应sql,添加order by 语句,完成排序功能 排序顺序值可在form中存放在隐藏域中,思路就是这样. 例如在使用Birt报表工具创建报表需要点击表头的名称排序的功能时,可以再表头名称处增加一个超链接,链接内容为T
-
Android编程实现Listview点击展开和隐藏的方法
本文实例讲述了Android编程实现Listview点击展开和隐藏的方法.分享给大家供大家参考,具体如下: 代码较多,所以找关键点大家贴出来,相信大家看了之后很容易就明白的, 在listview的activity中 List<Map<String, Object>> listItems = new ArrayList<Map<String, Object>>() myAdapter = new MyAdapter(getApplicationContext(
-
Android中Listview点击item不变颜色及设置listselector 无效的解决方案
这是同一个问题,Listview中点击item是会变颜色的,因为listview设置了默认的listselector,有一个默认的颜色,同理如果点击没颜色变化我们怎么设置listselector也不会变颜色的. 但是在我们的开发过程中,我们可能会碰到这样的问题listview点击不变颜色,总结了一下大概有这几种原因: 1.item的layout设置background颜色值,去掉背景颜色即可 2.listview中listselector属性的效果被覆盖了,比如列表的Item为一个占满单元格的I
-
Android Listview滑动时不加载数据 停止时加载数据
本文实例为大家分享了Listview滑动时不加载数据 停止时加载数据的具体代码,供大家参考,具体内容如下 数据源配置(Adapter) package com.zhengsonglan.listview_loading.adapter; import android.content.Context; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import
-
jquery配合.NET实现点击指定绑定数据并且能够一键下载
最近在做培训管理系统中遇到一个问题,需求需点击绑定的数据,将指定的附件下载下来,并且是批量下载(绑定的数据非datagrid,后台拼接的绑定). 效果图如下: 大体思路: 1.jquery得到选中的绑定数据的id,将这个id赋值到数组中,最后将这个数组的值赋值给页面中创建的隐藏变量 2.后台获取到隐藏变量的值,并将它循环数组取值,得到绑定值的下载地址,最后打包下载 首先html中div根据后台绑定 <div id="downloadInfo" runat="server
随机推荐
- ExtJs 正则表达式小结
- jQuery Easyui快速入门教程
- 使用开源工具制作网页验证码的方法
- nagios 分发文件实现代码
- Java并发程序入门介绍
- Javascript非构造函数的继承
- 详解ASP.NET MVC 利用Razor引擎生成静态页
- Android自定义View设定到FrameLayout布局中实现多组件显示的方法 分享
- ASP 提示非法赋值的解决方法
- 零基础学JavaScript最新动画教程+iso光盘下载
- php版小黄鸡simsimi聊天机器人接口分享
- Shell实用技巧:快速去除字符串中的空格
- 深入理解jQuery.data() 的实现方式
- 监视SQLServer数据库镜像[图文]
- jquery(1.3.2) 斑马线效果代码
- python实现下载指定网址所有图片的方法
- JAVA帮助文档全系列 JDK1.5 JDK1.6 JDK1.7 官方中英完整版整理
- Android开发笔记之:ListView刷新顺序的问题详解
- Android检查手机有没有安装某应用的方法
- PHP利用pdo_odbc实现连接数据库示例【基于ThinkPHP5.1搭建的项目】