当前位置:编程学习 > C#/ASP.NET >>

通过模板下载word问题

新手请教c#中如何通过已设置好的word模板(书签也做好)把数据库中的数据下载打印到word中。

网页中的textbox 和gridview。

所有的textbox存在表1中,gridview数据存在表2中。

谢谢~!~!

--------------------编程问答-------------------- 顶一个! --------------------编程问答-------------------- 获取数据集,打开word模板
public string Export(DataSet ds,System.Web.UI.Page page,string FileName)
{
string strM="";
object nothing=System.Reflection.Missing.Value;
object optional=System.Reflection.Missing.Value;
object visible=true;
object saveChanges = true;
object NOTsaveChanges = false;
object docreadonly=true;
object originalFormat = System.Reflection.Missing.Value;
object routeDocument =System.Reflection.Missing.Value;
Word.ApplicationClass app=new Word.ApplicationClass();
string strP="";
                        strP="Template_temp/"+FileName;
object FileNa=page.Server.MapPath(strP);
Word.Document Doc=app.Documents.Open(ref FileNa,ref optional,ref docreadonly,ref optional,ref optional,ref optional,ref optional,ref optional,ref optional,ref optional,ref optional, ref visible);
try
{
if(Doc.Bookmarks.Exists("A"))
{
object b1="A";
Word.Bookmark bk1=Doc.Bookmarks.Item(ref b1);
bk1.Range.Text=ds.Tables[0].Rows[0]["A"].ToString();
}

if(Doc.Bookmarks.Exists("B"))
{
object b2="B";
Word.Bookmark bk2=Doc.Bookmarks.Item(ref b2);
bk2.Range.Text=ds.Tables[0].Rows[0]["B"].ToString();
}
 strP=@"../Template_temp/YJ.doc";
object strFi=page.Server.MapPath(strP);
Doc.SaveAs(ref strFi,ref optional, ref optional, ref optional,ref optional, ref optional, ref optional,ref optional, ref optional, ref optional, ref optional);
Doc.Close(ref NOTsaveChanges, ref originalFormat, ref routeDocument);
app.Quit(ref NOTsaveChanges, ref originalFormat, ref routeDocument);
System.Runtime.InteropServices.Marshal.ReleaseComObject(app);
System.Runtime.InteropServices.Marshal.ReleaseComObject(Doc);
app=null;
Doc=null;
GC.Collect();
GC.Collect();

}
catch(Exception err)
{
strM=err.Message+",导出失败!";
return strM;
}
return "";
} --------------------编程问答-------------------- 还可获取List<T>实体类,通过属性赋值给标签再输出
public void FileToWord(System.Web.UI.Page page,string strP,string File) {
string Pa=page.Server.MapPath(@"Template_temp/"+File+"");
page.Response.AppendHeader("Content-Disposition","attachment;filename="+File+"");
page.Response.ContentType ="application/ms-word"; 
page.Response.WriteFile(Pa);
page.Response.End();
} --------------------编程问答-------------------- 大家来帮忙啊~!~!谢谢了~! --------------------编程问答-------------------- 大家来帮忙啊~!~!谢谢了~! --------------------编程问答-------------------- 替换word中设置的关键字就行了 --------------------编程问答-------------------- 还是不太懂啊~有教程吗?给链接个,谢谢~!~ --------------------编程问答-------------------- 1、建立书签与值的字典
2、打开word,替换书签。
    判断书签值如果是文本range.Text = "";
             如果是DataTable,Tables.Add
             一行一行写数据
3、保存关闭 --------------------编程问答-------------------- 还是没弄出来~!~!求教啊~!~ --------------------编程问答-------------------- 你的word模板呢贴张图看看,这么说太笼统啦
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,