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

}

}

加载模版

相关推荐
lilu88888881 小时前
AI代码生成器赋能房地产:ScriptEcho如何革新VR/AR房产浏览体验
前端·人工智能·ar·vr
LCG元1 小时前
Vue.js组件开发-实现对视频预览
前端·vue.js·音视频
阿芯爱编程1 小时前
vue3 react区别
前端·react.js·前端框架
烛.照1031 小时前
Nginx部署的前端项目刷新404问题
运维·前端·nginx
YoloMari1 小时前
组件中的emit
前端·javascript·vue.js·微信小程序·uni-app
浪浪山小白兔2 小时前
HTML5 Web Worker 的使用与实践
前端·html·html5
疯狂小料2 小时前
React 路由导航与传参详解
前端·react.js·前端框架
华纳云IDC服务商3 小时前
超融合服务器怎么优化数据管理?
运维·服务器
追光少年33223 小时前
Learning Vue 读书笔记 Chapter 2
前端·javascript·vue.js·vue3
前端熊猫3 小时前
JavaScript 的 Promise 对象和 Promise.all 方法的使用
开发语言·前端·javascript