在工作中有时需要把内容用word文档展示出来

在写代码前要引用word的dll

Microsoft.Office.Interop.Word“

 sing System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Word = Microsoft.Office.Interop.Word;
private void btnBroweOutput_Click(object sender, EventArgs e)
{ object Nothing = System.Reflection.Missing.Value;
object missing = System.Reflection.Missing.Value;
//创建word文档
Word.Application wordApp = new Word.ApplicationClass();
Word.Document wordDoc = wordApp.Documents.Add(ref Nothing, ref Nothing, ref Nothing, ref Nothing); //设置文档宽度
wordApp.Selection.PageSetup.LeftMargin = wordApp.CentimetersToPoints(float.Parse(""));
wordApp.ActiveWindow.ActivePane.HorizontalPercentScrolled = ;
wordApp.Selection.PageSetup.RightMargin = wordApp.CentimetersToPoints(float.Parse(""));
Object start = Type.Missing;
Object end = Type.Missing;
wordDoc.Range(ref start, ref end).Font.Name = "Verdana"; //设置字体
wordDoc.Range(ref start, ref end).Font.Size = ; //设置字体大小
wordDoc.Range(ref start, ref end).ParagraphFormat.Alignment = Word.WdParagraphAlignment.wdAlignParagraphCenter; //设置字体局中 //文档中创建表格
Word.Table newTable = wordDoc.Tables.Add(wordApp.Selection.Range, , , ref Nothing, ref Nothing);
//设置表格样式
newTable.Borders.OutsideLineStyle = Microsoft.Office.Interop.Word.WdLineStyle.wdLineStyleDouble; //设置外边样式
newTable.Borders.InsideLineStyle = Word.WdLineStyle.wdLineStyleSingle; //设置内边样式
newTable.Columns[].Width = 80f; // 设置表格宽度
newTable.Columns[].Width = 90f;
newTable.Columns[].Width = 80f;
newTable.Columns[].Width = 90f;
newTable.Columns[].Width = 90f;
newTable.Rows.Height = ; // 设置表格高度
for (int i = ; i < MyDs.Tables[].Rows.Count; i++)
{
//填充表格内容
newTable.Cell(, ).Range.Text = "职工编号:";
newTable.Cell(, ).Range.Text = txt职工编号.Text;
newTable.Cell(, ).Range.Text = "职工姓名:";
newTable.Cell(, ).Range.Text = txt职工姓名.Text;
newTable.Cell(, ).Range.Text = "民族类别:";//cbox民族
newTable.Cell(, ).Range.Text = cbox民族.Text;
newTable.Cell(, ).Range.Text = "出生日期:";
newTable.Cell(, ).Range.Text = mBox出生日期.Text;
newTable.Cell(, ).Range.Text = "年龄:";
newTable.Cell(, ).Range.Text = txt年龄.Text;
newTable.Cell(, ).Range.Text = "文化程度:";
newTable.Cell(, ).Range.Text = cbox文化程度.Text;
newTable.Cell(, ).Range.Text = "婚姻:";
newTable.Cell(, ).Range.Text = cbox婚姻.Text;
newTable.Cell(, ).Range.Text = "性别:";
newTable.Cell(, ).Range.Text = cbox性别.Text;
newTable.Cell(, ).Range.Text = "政治面貌:";
newTable.Cell(, ).Range.Text = cbox政治面貌.Text;
newTable.Cell(, ).Range.Text = "工作时间:";
newTable.Cell(, ).Range.Text = mBox工作时间.Text;
newTable.Cell(, ).Range.Text = "籍贯:";
newTable.Cell(, ).Range.Text = cbox省.Text + "省" ;
newTable.Cell(, ).Range.Text = cbox市.Text + "市";
newTable.Cell(, ).Range.Text = "身份证号:";
newTable.Cell(, ).Range.Text = txt身份证.Text;
newTable.Cell(, ).Range.Text = "职称类别:";
newTable.Cell(, ).Range.Text = cbox职称类别.Text;
newTable.Cell(, ).Range.Text = "所在部门:";
newTable.Cell(, ).Range.Text = cbox所在部门.Text;
newTable.Cell(, ).Range.Text = "月工资:";
newTable.Cell(, ).Range.Text = txt月工资.Text + label27.Text;
newTable.Cell(, ).Range.Text = "银行账号:";
newTable.Cell(, ).Range.Text = txt银行账号.Text;
newTable.Cell(, ).Range.Text = "合同起始日期:";
newTable.Cell(, ).Range.Text = mBox合同开始.Text;
newTable.Cell(, ).Range.Text = "合同结束日期:";
newTable.Cell(, ).Range.Text = mBox合同结束.Text;
newTable.Cell(, ).Range.Text = "合同年限:";
newTable.Cell(, ).Range.Text = txt合同年限.Text;
newTable.Cell(, ).Range.Text = "工龄:";
newTable.Cell(, ).Range.Text = txt工龄.Text + "年";
newTable.Cell(, ).Range.Text = "手机:";
newTable.Cell(, ).Range.Text = txt手机.Text;
newTable.Cell(, ).Range.Text = "毕业时间:";
newTable.Cell(, ).Range.Text = mBox毕业时间.Text;
newTable.Cell(, ).Range.Text = "电话:";
newTable.Cell(, ).Range.Text = txt电话号.Text;
newTable.Cell(, ).Range.Text = "毕业学院:";
newTable.Cell(, ).Range.Text = txt毕业学校.Text;
newTable.Cell(, ).Range.Text = "主修专业:";
newTable.Cell(, ).Range.Text = txt主修专业.Text;
newTable.Cell(, ).Range.Text = "家庭住址:";
newTable.Cell(, ).Range.Text = txt家庭地址.Text; try
{
//合并单元格
newTable.Cell(, ).Merge(newTable.Cell(, ));
newTable.Cell(, ).Merge(newTable.Cell(, ));
newTable.Cell(, ).Merge(newTable.Cell(, ));
newTable.Cell(, ).Merge(newTable.Cell(, ));
newTable.Cell(, ).Merge(newTable.Cell(, ));
newTable.Cell(, ).Merge(newTable.Cell(, ));
newTable.Cell(, ).Merge(newTable.Cell(, ));
newTable.Cell(, ).Merge(newTable.Cell(, ));
newTable.Cell(, ).Merge(newTable.Cell(, ));
newTable.Cell(, ).Merge(newTable.Cell(, ));
wordApp.Selection.Cells.VerticalAlignment = Word.WdCellVerticalAlignment.wdCellAlignVerticalCenter;//垂直居中
wordApp.Selection.ParagraphFormat.Alignment = Word.WdParagraphAlignment.wdAlignParagraphCenter;//水平居中
wordApp.Visible = true; // 显示word文档
}
catch
{
}
}
}

c#word文档输出的更多相关文章

  1. c#中操作word文档-一、模板方式写入

    转载自:http://blog.csdn.net/fujie724/article/details/5443322 适合模板写入 今天正好有人问我,怎么生成一个报表式的Word文档. 就是文字的样式和 ...

  2. 基于springboot的freemarker创建指定格式的word文档

    在web或其他应用中,经常我们需要导出或者预览word文档,比较实际的例子有招聘网站上预览或者导出个人简历,使用POI导出excel会非常的方便,但是如果想导出word,由于其格式控制非常复杂,故而使 ...

  3. C#简单实现动态数据生成Word文档并保存

    今天正好有人问我,怎么生成一个报表式的Word文档. 就是文字的样式和位置相对固定不变,只是里面的内容从数据中读取. 我觉得类似这种的一般用第三方报表来做比较简便.但既然要求了Word,只好硬着头皮来 ...

  4. JSP实现word文档的上传,在线预览,下载

    前两天帮同学实现在线预览word文档中的内容,而且需要提供可以下载的链接!在网上找了好久,都没有什么可行的方法,只得用最笨的方法来实现了.希望得到各位大神的指教.下面我就具体谈谈自己的实现过程,总结一 ...

  5. 批量导出access某表内容到word文档

    一.需求: 需要将表中每一条记录中的某些内容导出在一个word文档中,并将这些文档保存在指定文件夹目录下 二.界面,简单设计如下: 三.添加office相关引用 添加后可在解决方案资源管理器中看到: ...

  6. POI生成WORD文档

    h2:first-child, body>h1:first-child, body>h1:first-child+h2, body>h3:first-child, body>h ...

  7. 利用Aspose.Word控件和Aspose.Cell控件,实现Word文档和Excel文档的模板化导出

    我们知道,一般都导出的Word文档或者Excel文档,基本上分为两类,一类是动态生成全部文档的内容方式,一种是基于固定模板化的内容输出,后者在很多场合用的比较多,这也是企业报表规范化的一个体现. 我的 ...

  8. JSP利用freemarker生成基于word模板的word文档

    利用freemarker生成基于word模板的word文档 freemarker简介 FreeMarker是一个用Java语言编写的模板引擎,它基于模板来生成文本输出.FreeMarker与Web容器 ...

  9. 利用Aspose.Word控件实现Word文档的操作

    Aspose系列的控件,功能都挺好,之前一直在我的Winform开发框架中用Aspose.Cell来做报表输出,可以实现多样化的报表设计及输出,由于一般输出的内容比较正规化或者多数是表格居多,所以一般 ...

随机推荐

  1. vnpy源码阅读学习(9)回到OptionMaster

    回到OptionMaster 根据我们对APP调用的代码阅读,我们基本上知道了一个APP是如何被调用,那么我们回到OptionMaster学习下这个APP的实现. 看看结构 class OptionM ...

  2. Ubuntu中设置共享文件夹

    1,设备--->共享文件夹--->共享文件夹 2,小加号---->添加路径(自己设置主机上任意的路径)--->设置名称(我的是gx)---->选中自动挂载和固定分配--- ...

  3. tp5.1 模型 where多条件查询 like 查询

    来源:https://blog.csdn.net/qq_41241684/article/details/87866416 所以我改成这样: $paperTypeModel = new PaperTy ...

  4. Debugging Under Unix: gdb Tutorial (https://www.cs.cmu.edu/~gilpin/tutorial/)

    //注释掉 #include <iostream.h> //替换为 #include <iostream> using namespace std; Contents Intr ...

  5. 【JAVA基础】02 Java基础语法

    一.内容 注释 关键字 标识符 常量.进制和进制转换 变量 数据类型和类型转换 运算符 语句 二.注释 注释概述 用于解释说明程序的文字 Java中注释分类格式 单行注释 格式://注释文字 多行注释 ...

  6. 谈谈你对vuex的理解

    vuex创建公有仓库的插件 1.储存公共状态 2.能够根据事件来修改状态 3.多个组件都需要变化,有机制把这个新的状态通知给所有的组件 vuex中的四个类 1.state    定义需要共享的状态 2 ...

  7. UDT的Sender和Receiver

    Sender算法 数据结构和变量: Sender's Loss List:发送方的loss list用来存储丢失包的序列号,序列号来自于两个地方,一是receiver通过NAK包反馈回来,二是超时事件 ...

  8. 带权并查集--hdu3047 ZJnu stadium

    题意:给出一个n,m,n表示的是有n 个人,m表示的是 有m 对关系: 接下来输入的就是这m对关系,a,b,x:表示的是a,b相距x个距离:然后判断输入的是否与这个数的上面的数信息一致, 输出不一致的 ...

  9. DP背包(一)

    01背包 for(int i=0;i<n;i++) //遍历每一件物品 for(int j=v;j>=wei[i];j--)//遍历背包容量,表示在上一层的基础上,容量为J时,第i件物品装 ...

  10. python(运算符)

    一.运算符 1.算数运算符 (1)加(+) 注意:字符串与整数之间不能进行相加,需要通过str()或int()进行转换数据类型 整数与整数相加 >>> 1 + 1 2 >> ...