当前位置: 首页 > news >正文

winform datagridView 一次删除20000条数据

 Task<DeleteRowInfo>[] tasks = new Task<DeleteRowInfo>[taskCount];    // 创建一个数组来存储异步操作的结果  
                var date1 = DateTime.Now;
                HashSet<string> dataBSet = new HashSet<string>();
                for (int i = 0; i < dataGridView1.SelectedRows.Count; i++)
                {
                    dataBSet.Add(dataGridView1.SelectedRows[i].Cells["Fid"].Value.ToString());
                }
                DataTable newDataA = new DataTable();
                newDataA = dt.Clone();
                Task.Run(() =>
                {
                    foreach (DataRow row in dt.Rows)
                    {
                        string key = row["Fid"].ToString();
                        if (!dataBSet.Contains(key))
                        {
                            DataRow newRow = newDataA.NewRow();
                            newRow.ItemArray = row.ItemArray;
                            newDataA.Rows.Add(newRow);
                        }
                    }
                    dataGridView1.Invoke((Action)(() =>    //使用Invoke方法绑定新的DataTable到DataGridView
                    {
                        dataGridView1.DataSource = newDataA;
                        dataGridView1.Refresh();
                    }));
                });
                MessageBox.Show("  结束时间:" + DateTime.Now + "   开始时间:" + date1.ToString());

相关文章:

  • SpringBoot快速入门笔记(5)
  • GPT提示词分享 —— 中医
  • mysql中表的设计
  • 帝国CMS模板源码整站安装说明(图文)
  • APIFY集成客服系统:提升用户运营效率
  • 技术 SEO 初学者指南
  • hadoop:案例:将顾客在京东、淘宝、多点三家平台的消费金额汇总,然后先按京东消费额排序,再按淘宝消费额排序
  • 详解 Redis 在 Centos 系统上的安装
  • STM32为什么不能跑Linux?
  • Linux、Docker、Brew、Nginx常用命令
  • 高新技术企业上市要达到什么条件
  • Linux入门攻坚——18、SELinux、Bash脚本编程续
  • hive-分桶-索引(初篇)
  • 【DevOps工具篇】Keycloak安装配置及脚本化
  • 【算法】双指针算法
  • 【407天】跃迁之路——程序员高效学习方法论探索系列(实验阶段164-2018.03.19)...
  • 【译】React性能工程(下) -- 深入研究React性能调试
  •  D - 粉碎叛乱F - 其他起义
  • Date型的使用
  • gcc介绍及安装
  • Java反射-动态类加载和重新加载
  • mac修复ab及siege安装
  • php ci框架整合银盛支付
  • Webpack 4x 之路 ( 四 )
  • 记一次和乔布斯合作最难忘的经历
  • 解决jsp引用其他项目时出现的 cannot be resolved to a type错误
  • 漂亮刷新控件-iOS
  • 设计模式 开闭原则
  • 最近的计划
  • hi-nginx-1.3.4编译安装
  • mysql面试题分组并合并列
  • 如何在招聘中考核.NET架构师
  • (1)(1.11) SiK Radio v2(一)
  • (3)llvm ir转换过程
  • (done) 两个矩阵 “相似” 是什么意思?
  • (附源码)计算机毕业设计SSM疫情居家隔离服务系统
  • (更新)A股上市公司华证ESG评级得分稳健性校验ESG得分年均值中位数(2009-2023年.12)
  • (蓝桥杯每日一题)love
  • (六)Hibernate的二级缓存
  • (未解决)jmeter报错之“请在微信客户端打开链接”
  • (五)关系数据库标准语言SQL
  • (一) springboot详细介绍
  • (转)Windows2003安全设置/维护
  • .bat批处理出现中文乱码的情况
  • .MyFile@waifu.club.wis.mkp勒索病毒数据怎么处理|数据解密恢复
  • .net core 控制台应用程序读取配置文件app.config
  • .NET core 自定义过滤器 Filter 实现webapi RestFul 统一接口数据返回格式
  • .NET/C# 在代码中测量代码执行耗时的建议(比较系统性能计数器和系统时间)
  • .NET性能优化(文摘)
  • @基于大模型的旅游路线推荐方案
  • [ 2222 ]http://e.eqxiu.com/s/wJMf15Ku
  • [].shift.call( arguments ) 和 [].slice.call( arguments )
  • [2016.7 day.5] T2
  • [20160807][系统设计的三次迭代]
  • [23] GaussianAvatars: Photorealistic Head Avatars with Rigged 3D Gaussians