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

佛山网站建设推广百度下载安装官方下载

佛山网站建设推广,百度下载安装官方下载,光之翼可以做网站吗,成都手机网站开发读取excel并且显示进度条 通过C#实现DataGridView加载EXCEL文件,但加载时不能阻塞UI刷新线程,且向UI显示加载进度条。 #region 左上角导入 private async void ToolStripMenuItem_ClickAsync(object sender, EventArgs e) { …

读取excel并且显示进度条 

通过C#实现DataGridView加载EXCEL文件,但加载时不能阻塞UI刷新线程,且向UI显示加载进度条。

 #region 左上角导入
        private async void  ToolStripMenuItem_ClickAsync(object sender, EventArgs e)
        {
           
            dataGridView1.DataSource = null;
            dataGridView1.Rows.Clear();
            dataGridView1.Columns.Clear();
            progressBar1.Value = 0;
            progressBar1.Visible = true;

            // 打开文件对话框选择 Excel 文件
            OpenFileDialog file = new OpenFileDialog();
            file.Filter = "Excel文件|*.xlsx";
            if (file.ShowDialog() == DialogResult.OK)
            {
                string fname = file.FileName;
                await LoadExcelDataAsync(fname);  // 异步加载数据
            }
        }
        // 异步加载 Excel 数据
        private async Task LoadExcelDataAsync(string filePath)
        {
            var progress = new Progress<int>(value =>
            {
                progressBar1.Value = value;  // 更新进度条
                label11.Text = $"{value}%";   // Update label to show percentage
            });

            // 在后台线程中执行加载数据的任务
            System.Data.DataTable dataTable = await Task.Run(() => LoadExcelData(filePath, progress));

            // 加载完成后,将数据绑定到 DataGridView
            dataGridView1.DataSource = dataTable;
            progressBar1.Visible = false;  // 隐藏进度条
            label11.Visible = false;  // 隐藏进度条
        }
        // 使用 EPPlus 按行读取 Excel 数据并动态更新进度
        private System.Data.DataTable LoadExcelData(string filePath, IProgress<int> progress)
        {
            FileInfo fileInfo = new FileInfo(filePath);
            using (var package = new ExcelPackage(fileInfo))
            {
        
                ExcelWorksheet worksheet = package.Workbook.Worksheets[0];
                int rowCount = worksheet.Dimension.Rows;
                int columnCount = worksheet.Dimension.Columns;

                // 创建 DataTable 来存储数据
                System.Data.DataTable dt = new System.Data.DataTable();

                // 为 DataTable 添加列
                for (int col = 1; col <= columnCount; col++)
                {
                    dt.Columns.Add(worksheet.Cells[1, col].Text);  // 第一行作为列名
                }

                // 逐行读取数据并添加到 DataTable 中
                int progressInterval = rowCount / 100;  // 每读取一定行数更新进度
                int progressPercentage = 0;
                int rowCountProcessed = 0;

                for (int row = 2; row <= rowCount; row++)  // 跳过第一行作为标题行
                {
                    DataRow newRow = dt.NewRow();
                    for (int col = 1; col <= columnCount; col++)
                    {
                        newRow[col - 1] = worksheet.Cells[row, col].Text;
                    }
                    dt.Rows.Add(newRow);

                    rowCountProcessed++;
                    if (rowCountProcessed % progressInterval == 0)
                    {
                        progressPercentage = (int)((float)rowCountProcessed / rowCount * 100);
                        progress.Report(progressPercentage);  // 更新进度条
                    }
                }

                return dt;
            }
        }

http://www.jinmujx.cn/news/80832.html

相关文章:

  • 怎么创建自己的公司网站域名查询 站长查询
  • 苏州网站建设与网络推广软件推广平台有哪些?哪个比较好
  • 海外注册域名的网站中小企业管理培训课程
  • 如何建立一个企业的网站精准ip地址查询工具
  • 石家庄企业网站开发网络网站
  • 二级网站收录网站推广公司电话
  • 做站群一个网站多少钱白杨seo教程
  • 平面设计软件有哪些图标seo教程seo教程
  • 枣庄哪里有做网站设计附近的教育培训机构有哪些
  • 建立网站需要多少钱萍畜湖南岚鸿首选网站检测中心
  • 小程序源码怎么导入seo在线优化网站
  • 南宁个人网站建设今日热搜榜排名最新
  • 做网站 学什么北京官方seo搜索引擎优化推荐
  • 来宾网站制作百度seo排名教程
  • 什么网站可以做兼职 知乎百度的seo关键词优化怎么弄
  • 动态网站开发基础试题排名优化外包公司
  • php网站的推广方式软文写作要求
  • 北海住房和城乡建设部网站冯耀宗seo视频教程
  • wordpress 网站排名优化营销推广活动策划方案
  • 石家庄有做网站的公司吗优化关键词排名提升
  • wordpress可爱的主题百度惠生活怎么优化排名
  • 建设网站 万网公司网站建设平台
  • 网站的流量建设软件外包公司好不好
  • 做网站用什么软件最简单整合营销传播成功案例
  • 即速应用微信小程序官网长春网站优化页面
  • 长春哪个做网站的公司比较靠谱百度品牌专区怎么收费
  • 定制设计的网站推广方案应该有哪些方面
  • 老李网站建设搜外
  • 网站结构图怎么做深圳百度seo代理
  • 做门窗投标网站昆山网站建设推广