一、对阿拉伯数字进行自定义排序:

简单有效方法:

  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排序的更多相关文章

  1. DataGridView使用技巧十三:点击列头实现升序和降序排序

    DataGridView 列有三种排序模式.每一列的排序模式是通过该列的 SortMode 属性指定的,该属性可以设置为以下的 DataGridViewColumnSortMode 枚举值之一. Da ...

  2. winform使用相关

    1.回车键触发按钮点击事件——回车登录 设置窗体的AccessButton属性 2.密码框样式设置 设置PasswordChar为想要的密码显示的样式,如*  3.设置窗口居中 设置StartPosi ...

  3. 禁用datagridview中的自动排序功能

    把datagridview中的自动排序功能禁用自己收集的两种方法,看看吧①DataGridView中的Columns属性里面可以设置.进入"EditColumns"窗口后,在相应的 ...

  4. DataGridView点击排序完成后如何禁止自动排序

    Summary: Disable sorting after clicking DataGridView columnheader,Prevent databound DataGridView fro ...

  5. datagridview 点击列标题排序

    开发winform中,平时经常用到数据列表,我们大多选用datagridview,但是此控件本身没有排序的功能.参阅网上资料.留下标记,以后备用. datagridview的数据显示一般是通过数据绑定 ...

  6. 多线程更新已排序的Datagridview数据,造成数据错位

    多线程更新已排序的Datagridview数据,触发Datagridview的auto-sort时间,数据重新排序,造成后面更新数据的更新错误. 解决方法: 方法一.设置Datagridview的表头 ...

  7. DataGridView绑定BindingList<T>带数据排序的类

    本文章转载:http://yuyingying1986.blog.hexun.com/30905610_d.html DataGridView绑定List<T>类时候,不会自动的进行排序. ...

  8. DataGridView 列排序 内存表查找

    DataRow[] drow = dt.Select("列名 = 列名的值" ); 就这句话,dt是一个datatable 且断点调试时能看到里面有trade这个列,可为什么执行到 ...

  9. DataGridView 多列排序功能

    System.Data.DataTable dt = new System.Data.DataTable(); private void FillDataGridView() { dt.Columns ...

随机推荐

  1. 最新学习springboot 配置注解

    一.概述      Spring Boot设计目的是用来简化新Spring应用的初始搭建以及开发过程.Spring Boot并不是对Spring功能上的增强,而是提供了一种快速使用Spring的方式. ...

  2. Rabbitmq(一)

              ClientA,ClientB: 为Producer,数据的发送方. Client1,Client2,Client3:为Consumer,数据的接收方. Exchange:消息交换 ...

  3. vue-nuxt.js部署到宝塔主机服务器

    废话不多说,直接上步骤,如下: 本文章为在 vue环境下使用了nuxt.js 1.搭建环境--由于本人安装的是宝塔主机,因此如下: 由于我直接使用的是宝塔主机,直接去“软件管理”安装 PM2管理器. ...

  4. linux打patch简单示例

    在项目中,有些模块是开源的,没有源码或者不能改动源码,想要修复.优化里面的Bug,这时就需要用到patch了. 1.    生成patch 制作补丁有两种法法,diff和quilt. 1.1   di ...

  5. elasticsearch_dsl 的nested

    在工作中会碰到这样的一个需求,mapping中定义的类型是nested { "judgement":{ "mappings":{ "content&q ...

  6. kubernetes命令式容器应用编排/部署应用/探查应用详情/部署service对象/扩缩容/修改删除对象

    部署Pod应用 创建delpoyment控制器对象 [root@master ~]# kubectl run myapp --image=ikubernetes/myapp:v1 --port=80 ...

  7. gi的安装和使用

    Git的安装 git是什么? git是一种版本控制器,更直白的说,团队开发的时候,管理代码使用的软件 Linux下的安装 yum install git Git的配置 在使用git之前,需要先进行配置 ...

  8. Python 爬虫 多进程清洗代理

    利用多线程检测代理网站提供的免费代理是否可用 import requests from lxml import etree import time import multiprocessing def ...

  9. UART学习之路(一)基本概念

    第一篇博客,首先记录一下这一个多星期来的学习内容. UART学习之路第一篇,是UART的基本概念介绍.后续会用STM32F103的串口与PC机通信.最后使用Verilog HDL写出串口发送模块和接收 ...

  10. 20155310 《JAVA程序设计》实验二(JAVA面向对象程序设计)实验报告

    20155310 <JAVA程序设计>实验二(JAVA面向对象程序设计)实验报告 实验内容 •初步掌握单元测试和TDD •理解并掌握面向对象三要素:封装.继承.多态 •初步掌握UML建模 ...