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"));

}

}

加载模版

相关推荐
井柏然27 分钟前
前端工程化—实战npm包深入理解 external 及实例唯一性
前端·javascript·前端工程化
为java加瓦29 分钟前
IO多路复用的两种触发机制:ET和LT触发机制。以及IO操作是异步的还是同步的理解
java·服务器·网络
毕业设计论文1 小时前
个人备忘录的设计与实现
运维·服务器·网络
kalvin_y_liu1 小时前
.NET+AI: (微家的AI开发框架)什么是内核记忆(Kernel Memory)?
人工智能·.net
IT_陈寒1 小时前
Redis 高性能缓存设计:7个核心优化策略让你的QPS提升300%
前端·人工智能·后端
井柏然1 小时前
从 npm 包实战深入理解 external 及实例唯一性
前端·javascript·前端工程化
玩泥巴的2 小时前
.NET驾驭Word之力:数据驱动文档 - 邮件合并与自定义数据填充完全指南
c#·word·.net·com互操作
羊锦磊2 小时前
[ vue 前端框架 ] 基本用法和vue.cli脚手架搭建
前端·vue.js·前端框架
brzhang2 小时前
高通把Arduino买了,你的“小破板”要变“AI核弹”了?
前端·后端·架构
她说..2 小时前
通过git拉取前端项目
java·前端·git·vscode·拉取代码