使用DocX开源组件,实现动态数据的填充。
2016-05-27 15:25
393 查看
1、先解释一下,什么叫做动态数据,动态数据指的是,一条数据的格式固定,但数据的条数不固定。
2、应用环境,在一个表格当中如果,现在表格有三行n列,如果你需要在表格第一行后添加同等规格的一行或n行,应该怎么去做?
3、根据上面的应用环境,不难发现,要完成这项工作的5个过程,1、找到位置。2、获取模板行。3、将模板行添加到当前行的下一行。4、向被添加的行写值。或许会有一个循环过程5、删除模板行。
4、话不多说,上代码。
注意:要使用这个片段,先添加对 DocX组件的引用。
DocX项目:http://docx.codeplex.com/releases/view/80870
2、应用环境,在一个表格当中如果,现在表格有三行n列,如果你需要在表格第一行后添加同等规格的一行或n行,应该怎么去做?
3、根据上面的应用环境,不难发现,要完成这项工作的5个过程,1、找到位置。2、获取模板行。3、将模板行添加到当前行的下一行。4、向被添加的行写值。或许会有一个循环过程5、删除模板行。
4、话不多说,上代码。
注意:要使用这个片段,先添加对 DocX组件的引用。
DocX项目:http://docx.codeplex.com/releases/view/80870
//控制要插入的行数 for (int i = 0; i < 5; i++) { //这里测试成功 //获取到模板行的对象(一般是一个空行,只有架子没有数据的) Row insertRow = docx.Tables[0].Rows[26]; //将获取到的这一个模板行,添加到当前行的下一行(下一个节点) //我这里要插入到第27行及以后,我的模板行是第27行,i的作用是控制被操作的行 docx.Tables[0].Rows[26+i].Xml.AddAfterSelf(insertRow.Xml); //控制要插入那些列 for (int j = 2; j < 9; j++) { //设置要插入的值 string value = (i + j).ToString(); //将值添加到该单元格 docx.Tables[0].Rows[26 + i + 1].Cells[j].Paragraphs[0].Append(value); } //Paragraph.Xml.ElementsBeforeSelf(); } //删除模板行,要不然会有一个空行 docx.Tables[0].RemoveRow(26);
相关文章推荐
- dubbo学习
- 冒泡排序
- Html5刮刮卡效果(移动端、PC端)
- editplus+phpCB 简单的PHP代码格式化工具
- linux介绍与安装
- 22. SpringMVC_ModelAttribute注解修饰POJO类型的入参(无写笔记)
- (面试)程序员面试总结汇总(待整理)
- 大文件拆分
- SpringMVC学习系列(2) 之 经典的HelloWorld实现
- SpringMVC学习系列(1) 之 初识SpringMVC
- 多线程学习(三)线程的同步与锁
- Android的setVisibility(View.GONE)无效的问题及原因分析
- 图的邻接矩阵表示 DFS 和BFS C++实现
- Oracle 下载(Oracle10g下载地址--多平台下的32位和64位 )
- Android 状态保存 生命周期 onSaveInstanceState onRestoreInstanceState 方法
- Mybatis无缝集成Memcached分布式缓存系统
- 21. SpringMVC_如何确定目标方法POJO类型参数(无写笔记)
- acm_猴子与箱子
- Sql Server 主从数据库配置
- 二进制中1的个数