c# dataGridView排序
一、对阿拉伯数字进行自定义排序:
简单有效方法:
1.该列的sortmode属性为auto...(一般默认)
2.比如首列序号,添加该列数据的时候直接添加int即可。切忌不要用string。
object[] newRow = new object[11];
DataGridImageList.Rows.Clear();
int numSum = cims.Count;
foreach (var cim in cims)
{
newRow[0] = (numSum--);
newRow[1] = cim.customername;
newRow[2] = cim.sex; string birth = cim.birthday.Split('-')[0];
if (birth == "" || birth == null || birth == "null")
{
newRow[3] = "10";
}
else
{
int nowYear = int.Parse(DateTime.Now.Year.ToString());
newRow[3] = nowYear - int.Parse(birth) + "";
} newRow[4] = "" + cim.IDCard.ToString().Substring(0, 6) + "********";
if (cim.IDCard.Length > 14)
{
newRow[4] += cim.IDCard.ToString().Substring(14);
}
newRow[5] = cim.createtime.ToString();
newRow[6] = cim.imagecount.ToString();
newRow[7] = cim.ShuXing;
newRow[8] = cim.SeriesState.ToString();
newRow[9] = cim.siteName;
newRow[10] = cim.SeriesID; DataGridImageList.Rows.Add(newRow);
i = i + 1;
}
二、其他自定义排序:
1.该列的sortmode属性为programming
2.该datagridview添加columHeaderClick事件
3.在该事件中添加自定义排序。
自定义排序方法:(经百度,未测试)
1.添加datagridview的datasource值。
this.dtSpiderSummary = new DataTable();
dtSpiderSummary.Columns.Add("日志文件");
dtSpiderSummary.Columns.Add("大小(M)");
foreach (var item in SpiderHelper.SpiderAgents)
{
dtSpiderSummary.Columns.Add(item.Key);
} DataRow row = dtSpiderSummary.NewRow();
dtSpiderSummary.Rows.Add(row);
dataGridView1.DataSource=dtSpiderSummary;
2.对该dataSource进行排序。
c# dataGridView排序的更多相关文章
- DataGridView使用技巧十三:点击列头实现升序和降序排序
DataGridView 列有三种排序模式.每一列的排序模式是通过该列的 SortMode 属性指定的,该属性可以设置为以下的 DataGridViewColumnSortMode 枚举值之一. Da ...
- winform使用相关
1.回车键触发按钮点击事件——回车登录 设置窗体的AccessButton属性 2.密码框样式设置 设置PasswordChar为想要的密码显示的样式,如* 3.设置窗口居中 设置StartPosi ...
- 禁用datagridview中的自动排序功能
把datagridview中的自动排序功能禁用自己收集的两种方法,看看吧①DataGridView中的Columns属性里面可以设置.进入"EditColumns"窗口后,在相应的 ...
- DataGridView点击排序完成后如何禁止自动排序
Summary: Disable sorting after clicking DataGridView columnheader,Prevent databound DataGridView fro ...
- datagridview 点击列标题排序
开发winform中,平时经常用到数据列表,我们大多选用datagridview,但是此控件本身没有排序的功能.参阅网上资料.留下标记,以后备用. datagridview的数据显示一般是通过数据绑定 ...
- 多线程更新已排序的Datagridview数据,造成数据错位
多线程更新已排序的Datagridview数据,触发Datagridview的auto-sort时间,数据重新排序,造成后面更新数据的更新错误. 解决方法: 方法一.设置Datagridview的表头 ...
- DataGridView绑定BindingList<T>带数据排序的类
本文章转载:http://yuyingying1986.blog.hexun.com/30905610_d.html DataGridView绑定List<T>类时候,不会自动的进行排序. ...
- DataGridView 列排序 内存表查找
DataRow[] drow = dt.Select("列名 = 列名的值" ); 就这句话,dt是一个datatable 且断点调试时能看到里面有trade这个列,可为什么执行到 ...
- DataGridView 多列排序功能
System.Data.DataTable dt = new System.Data.DataTable(); private void FillDataGridView() { dt.Columns ...
随机推荐
- Angular4 自制分页控件
过年后第一波,自制的分页控件,可能功能没有 PrimeNG 那么好,但是基本可以实现自定义翻页功能,包括:首页/最后一页/上一页/下一页. 用户可以自定义: 1. 当前默认页码(如未提供,默认为第一页 ...
- SpringAOP的自定义注解实践
springaop属于spring的重要属性,在java中有相当广泛的用途,大家一般都接触过aop实现事务的管理,在xml里配好声明式事务,然后直接在service上直接加上相应注解即可, 今天我们来 ...
- Homebrew(brew)安装MySQL成功后无法登录
Homebrew简称brew,OSX上的软件包管理工具,在Mac终端可以通过brew安装.更新.卸载各种软件,(简直就是神器级武器). 废话不多说,没安装brew自己去百度学习安装,这里就不多说了. ...
- RuntimeError: Cannot run in multiple processes: IOLoop instance has already been initialized. You cannot call IOLoop.instance() before calling start_processes()
解决方法: settings中的debug改为false,或者注释掉 参照: https://stackoverflow.com/questions/32521122/cannot-run-in-mu ...
- docker入门——安装(CentOS)、镜像、容器
Docker简介 什么是docker 官方解释: Docker is the company driving the container movement and the only container ...
- micro:bit 软件生态系统介绍
microbit 软件分成在microbit (Target Computer 如下图右边)上执行的及主计算机(Host Computer 如下图左边)上两类 : 一般程序写好后透过USB 转到mic ...
- django数据库迁移-15
目录 1.迁移 1.生成迁移文件 2.执行迁移命令 添加测试数据 1.迁移 创建完模型类后,并没有真正的在数据库中创建了数据表,需要执行迁移命令,在数据表中创建数据表. 1.生成迁移文件 manage ...
- 浅析Vue.js 中的条件渲染指令
1 应用于单个元素 Vue.js 中的条件渲染指令可以根据表达式的值,来决定在 DOM 中是渲染还是销毁元素或组件. html: <div id="app"> < ...
- Hadoop学习总结之Map-Reduce的过程解析111
一.客户端 Map-Reduce的过程首先是由客户端提交一个任务开始的. 提交任务主要是通过JobClient.runJob(JobConf)静态函数实现的: public static Runnin ...
- 20155210 2016-2017-2《Java程序设计》课程总结
20155210 2016-2017-2<Java程序设计>课程总结 (按顺序)每周作业链接汇总 预备作业1:你期望的师生关系 预备作业2:做中学 预备作业3:虚拟机安装 第一周作业:教材 ...