aspose html导出word,Aspose.Words控件操作实例—按模板导出Word

许多开发人员在导出Excel或者Word经常使用的方法就是画网页,比如使用GridView编写代码导出Excel,不仅不能改变Excel单元的大小,而且排版的效果也是杂乱不整齐的,导出Word时也是如此,相信大家都在为这个问题感到烦恼。所以选择一种有效的方式就显得尤为重要,今天要提到了就是Aspose组件,不仅可以导出Excel还能导出Word以及其他不同格式。Aspose.Words下载

System.Web.HttpContext.Current.Response.Clear();

System.Web.HttpContext.Current.Response.Buffer = true;

System.Web.HttpContext.Current.Response.Write("");

System.Web.HttpContext.Current.Response.Write("

");

System.Web.HttpContext.Current.Response.Write("");//解决中文乱码问题,导出数据在20行内容易出现乱码

System.Web.HttpContext.Current.Response.Write(" ");

我们需要导出如下图样式的Word:(由于示例中的报表是内部报表,所以图片做了相应处理,代码部分也已经尽量详细,不影响最后效果)

20120816203016.JPG

首先我们需要先建立模板,只需在Word里面插入域得到如下图效果。简单说明一下 是表示从名为All的 DataTable 里面获取数据 就是结束的位置,中间的 之类的都是名为All这个的DataTable的列名.中间还有另外一个 同理这个是名为Item的DataTable 他们中间的就是Item这个表的列名。

20120816203105.JPG

下面在介绍一下代码的编写,首先构造一个DataSet包含两个DataTable一个叫All 一个叫Item..添加代码大致如下,之后就是填充这2个DataTable即可。

private DataSet GetOneDs()

{

DataTable dt1 = new DataTable("All");

dt1.Columns.Add("jylx");

dt1.Columns.Add("my");

dt1.Columns.Add("mc");//

dt1.Columns.Add("mz");//

dt1.Columns.Add("mjz");//

//dt1.Columns.Add("mqt");//其他

dt1.Columns.Add("sjbm");//

dt1.Columns.Add("yqwcrq");//要求完成日期

dt1.Columns.Add("jyyj");//检验依据

dt1.Columns.Add("szq");//自取

dt1.Columns.Add("sdzwd");//电子文档

dt1.Columns.Add("sqt");//其它

dt1.Columns.Add("ztwz");//完整

dt1.Columns.Add("ztqx");//缺陷

dt1.Columns.Add("ztms");//描述

dt1.Columns.Add("sjbmfzr");//送检部门负责人

dt1.Columns.Add("syrrq");//送检人/日期

dt1.Columns.Add("jybmfzr");//检测部门负责人

dt1.Columns.Add("jyrrq");//接样人/日期

DataRow dr1 = dt1.NewRow();

dr1["my"] = "□";//

dr1["mc"] = "□";//

dr1["mz"] = "□";//

dr1["mbz"] = "□";//

dr1["ztwz"] = "□";//完整

dr1["ztqx"] = "□";//缺陷

dr1["sdzwd"] = "□";//完整

dr1["szq"] = "□";//缺陷

dt1.Rows.Add(dr1);

DataTable dt2 = new DataTable("Item");

dt2.Columns.Add("bh");

dt2.Columns.Add("mc");

dt2.Columns.Add("sl");

dt2.Columns.Add("rq");

DataSet ds = new DataSet();

ds.Tables.Add(dt1);

ds.Tables.Add(dt2);

return ds;

}

最后只要根据DataSet填充模板输出即可,代码如下:

Document doc = new Document(strPath);

doc.MailMerge.ExecuteWithRegions(ds);

doc.Save(Page.Response, "C010.doc", ContentDisposition.Attachment, SaveOptions.CreateSaveOptions(SaveFormat.Doc));

标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至hey@evget.com

文章转载自:慧都控件网

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值