首页 > 编程语言 >C# DataGridView自定义排序

C# DataGridView自定义排序

时间:2023-05-08 11:24:02浏览次数:42  
标签:string 自定义 C# SortResult DataGridView Split cellValue2 cellValue1

 private void dgvScanFai_SortCompare(object sender, DataGridViewSortCompareEventArgs e)
        {
            if (e.Column.Name == "Time")
            {
                string cellValue1 = e.CellValue1.ToString();
                string cellValue2 = e.CellValue2.ToString();

                // 提取出数字部分进行比较
                int intCellValue1 = Convert.ToInt32(cellValue1.Split('-')[0]);
                int intCellValue2 = Convert.ToInt32(cellValue2.Split('-')[0]);

                // 比较数字部分的大小
                e.SortResult = intCellValue1.CompareTo(intCellValue2);

                // 如果数字相同,则按照 ABC 部分进行比较
                if (e.SortResult == 0)
                {
                    string abcPart1 = cellValue1.Split('-')[1];
                    string abcPart2 = cellValue2.Split('-')[1];
                    e.SortResult = abcPart1.CompareTo(abcPart2);
                }

                e.Handled = true;
            }
        }

  

标签:string,自定义,C#,SortResult,DataGridView,Split,cellValue2,cellValue1
From: https://www.cnblogs.com/clx150401/p/17381184.html

相关文章

  • MSBuild是 Microsoft Build Engine
    MSBuild是MicrosoftBuildEngine的缩写,代表Microsoft和VisualStudio的新的生成平台。MSBuild在如何处理和生成软件方面是完全透明的,使开发人员能够在未安装VisualStudio的生成实验室环境中组织和生成产品。MSBuild引入了一种新的基于XML的项目文件格式,这种格式容......
  • 放大招:三步搞定ChatGPT提示词,轻松写出高质量提问,最新经验分享
    在撰写ChatGPT提示语的时候,有一个基本的三层结构,经过在工作和生活上的实践,有助于解决大多数不同类型的任务。 尤其在你的问题有点复杂,想不清楚要怎么问比较好的时候,通过三层结构,让我们有结构的提出问题,并获得ChatGPT相对更有效的回答。 这三层结构的基础是: 目的优先输......
  • 任意大模型低成本变类ChatGPT方法开源
    科幻中有机器人三原则,IBM说不够,要十六原则最新大模型研究工作中,以十六原则为基础,IBM让AI自己完成对齐流程。全程只需300行(或更少)人类标注数据,就把基础语言模型变成ChatGPT式的AI助手。更重要的是,整个方法完全开源,也就是说,任何人都能按此方法,低成本把......
  • [记]Rust使用winrt库调用第三方C# DLL库的方法?
    Rust是一门系统编程语言,它的运行时比较"轻量级",因此难以跨平台地直接调用WindowsRuntime(WinRT)组件。不过我们可以通过Rust库winrt来操作WinRT组件,同时也可以通过Rust的FFI(ForeignFunctionInterface)功能来调用第三方C#DLL库。以下是调用第三方C#DLL......
  • 文件系统 fdatasync fsync sync 详解
    一、Buffer和Cache简介 数据写入内存空间,这段空间就是缓冲区buffer,写入缓冲区把数据从内存空间读出,这段空间就是缓存器cache,读取缓存区  1、cacheCache:缓存区,是高速缓存,是位于CPU和主内存之间的容量较小但速度很快的存储器。 Cache并不是缓存文件的,而是缓存块的(块......
  • WPF注入service,将service作为viewModel参数时,无法进入Model的问题。
    WPF注入service,将service作为viewModel参数时,无法进入Model的问题。一开始以为是注入失败,或者注入的service不对。经过排查,发现是viewModel中的参数service,不是当前包的service,是api通用包中的。....更改之后就可以进入Model了。......
  • 2023 xjtupc 西交校赛
    A签到,\(O(1)\)。C++Code#include"bits/stdc++.h"usingnamespacestd;usingi64=longlong;intmain(){ios::sync_with_stdio(false);cin.tie(nullptr);intn;cin>>n;cout<<(n<=6?"water"......
  • Oracle 报错:ORA-01438: 值大于为此列指定的允许精度
    今天在插入oracle数据库时,提示“ORA-01438:值大于为此列允许的精度“错误,经网上查找资料后解决了此错误错误说明ORA-01438,发生此错误的原因在于我们插入的数据长度超过了字段指定的字段长度,比如插入的数据为102329204123.33829492,小数点前长度为12,小数点后长度为8,若字段字符类型......
  • 双有源全桥变换器(DAB)电流前馈控制模型,采用C代码实现控制过程,可极大提高变换器动态响
    双有源全桥变换器(DAB)电流前馈控制模型,采用C代码实现控制过程,可极大提高变换器动态响应性能。模型里也包含传统电压环控制,可用于对比。~ID:94180679900002231......
  • elSelect点击空白处无法收起下拉框(失去焦点并隐藏)
    学习记录,为了以后有同样的问题,省得再百度了,方便自己也方便你们element中多选的select有个问题,就是点击空白或者关闭弹窗,下拉还会一直展示出来百度了好一会,觉得下面两位大佬说的最合理,然后就搬运了下由于我这边业务很简单,然后就不想全局折腾参考大佬链接地址https://www.jb51.cc/......