ReoGrid.NET集成到winfrom

ReoGrid一个支持excel操作的控件,支持集成到任何winfrom项目内。

先看效果图:

如何使用:

使用ReoGrid自带excel模版设计工具先设计一个模版,设计器如下:

具体例子看官方文档

代码示例如下:

var sheet = reoGridControl1.CurrentWorksheet;

SetReadOnly(sheet, new RangePosition("A1:AB2"));//设置只读

sheet.Ranges[sheet.Rows - num, 0, sheet.Rows, 24].BorderOutside = RangeBorderStyle.BlackBoldSolid;

sheet.Ranges[sheet.Rows - num, 0, sheet.Rows, 24].BorderInsideHorizontal = RangeBorderStyle.BlackSolid;

sheet.Ranges[sheet.Rows - num, 0, sheet.Rows, 24].BorderInsideVertical = RangeBorderStyle.BlackDotted;

增加边框

private void Sheet_CellDataChanged(object sender, unvell.ReoGrid.Events.CellEventArgs e)

{

var sheet = reoGridControl1.CurrentWorksheet;

int iid = Tools.ToInt(sheet.Cells[e.Cell.Row, iidNum].Data, 0);

string state = sheet.Cells[e.Cell.Row, stateNum].Data + "";

if (iid < 1 && string.IsNullOrEmpty(state))

{

sheet[e.Cell.Row, stateNum] = "Add";

}

else if (iid > 0 && string.IsNullOrEmpty(state))

{

sheet[e.Cell.Row, stateNum] = "Update";

}

}

public bool SetReadOnly(Worksheet sheet, RangePosition range)

{

sheet.IterateCells(range, ((row, col, cell) =>

{

cell.IsReadOnly = true;

return true;

}));

return true;

}

private void ReLoadGrid()

{

using (var ms = new System.IO.MemoryStream(Ufida.U8.Portal.ReportList.Properties.Resources.demo6))

{

reoGridControl1.Load(ms, unvell.ReoGrid.IO.FileFormat.ReoGridFormat);

var sheet1 = reoGridControl1.CurrentWorksheet;

sheet1.AfterCellEdit -= Sheet_CellDataChanged;

sheet1.AfterCellEdit += Sheet_CellDataChanged;

SetReadOnly(sheet1, new RangePosition("A1:AB2"));

}

}

加载模版

相关推荐
光影少年30 分钟前
react状态管理都有哪些及优缺点和应用场景
前端·react.js·前端框架
roman_日积跬步-终至千里1 小时前
【LangGraph4j】LangGraph4j 核心概念与图编排原理
java·服务器·数据库
野犬寒鸦1 小时前
从零起步学习并发编程 || 第六章:ReentrantLock与synchronized 的辨析及运用
java·服务器·数据库·后端·学习·算法
saber_andlibert2 小时前
TCMalloc底层实现
java·前端·网络
逍遥德2 小时前
如何学编程之01.理论篇.如何通过阅读代码来提高自己的编程能力?
前端·后端·程序人生·重构·软件构建·代码规范
冻感糕人~2 小时前
【珍藏必备】ReAct框架实战指南:从零开始构建AI智能体,让大模型学会思考与行动
java·前端·人工智能·react.js·大模型·就业·大模型学习
程序员agions2 小时前
2026年,“配置工程师“终于死绝了
前端·程序人生
alice--小文子2 小时前
cursor-mcp工具使用
java·服务器·前端
晚霞的不甘2 小时前
揭秘 CANN 内存管理:如何让大模型在小设备上“轻装上阵”?
前端·数据库·经验分享·flutter·3d
小迷糊的学习记录3 小时前
0.1 + 0.2 不等于 0.3
前端·javascript·面试