winform 使用MiniExcel 动态读取EXCEL文件 动态加载列跟数据

var excelData = MiniExcel.Query(txtFileName.Text);

if (excelData.Count() <= 0)

{

MessageBox.Show("当前的Sheet页没有读取到对应的数据!");

}

else

{

DataRow dr = null;

int intI = 0;

foreach (IDictionary<string, object> row in excelData)

{

var rowsKeys = row.Keys.ToList();

var rowsValues = row.Values.ToList();

for (int i = 0; i < rowsKeys.Count; i++)

{

if (intI == 0)

{

dataGridTable.Columns.Add(rowsValues[i] == null ? "" : rowsValues[i].ToString(), typeof(string));

}

else

dr[i] = rowsValues[i];

}

if (intI > 0)

{

dataGridTable.Rows.Add(dr);

}

dr = dataGridTable.NewRow();

intI++;

}

dataGridInfo.DataSource = dataGridTable;

}

相关推荐
良木生香6 分钟前
【C++初阶】STL——List从入门到应用完全指南(1)
开发语言·数据结构·c++·程序人生·算法·蓝桥杯·学习方法
Alice-YUE9 分钟前
深入解析 JS 事件循环:浏览器与 Node.js 的差异全解析
前端·javascript·笔记·学习
HYCS11 分钟前
用pixijs实现fabricjs(二):对象的基础位置信息
前端·javascript·canvas
Alice-YUE12 分钟前
【无标题】
开发语言·javascript·ecmascript
淸湫14 分钟前
项目中使用了全局权限管理,请详细描述如何通过Vue Router的路由守卫来实现全局权限控制?
前端·vue.js
Twsit丶16 分钟前
ECMAScript 常用特性整理(ES6 — ES13)
javascript
雪铃儿17 分钟前
Shorebird 之外,Flutter Android 热更新还有什么选择
android·前端
李剑一22 分钟前
前端必看 | Vue 刷新页面,生命周期钩子直接 "罢工",原来问题在这?90% 开发者都栽过!
前端·vue.js
閞杺哋笨小孩30 分钟前
域名驱动多租户入驻:后台配置 + 前端解析
前端·vue.js
TeamDev32 分钟前
在 Excel 加载项中嵌入 Web 视图
前端·后端·.net