在工作中有时需要把内容用word文档展示出来
在写代码前要引用word的dll
Microsoft.Office.Interop.Word“
1 sing System; 2 using System.Collections.Generic; 3 using System.ComponentModel; 4 using System.Data; 5 using System.Drawing; 6 using System.Linq; 7 using System.Text; 8 using System.Windows.Forms; 9 using Word = Microsoft.Office.Interop.Word; 10 private void btnBroweOutput_Click(object sender, EventArgs e) 11 { 12 13 object Nothing = System.Reflection.Missing.Value; 14 object missing = System.Reflection.Missing.Value; 15 //创建word文档 16 Word.Application wordApp = new Word.ApplicationClass(); 17 Word.Document wordDoc = wordApp.Documents.Add(ref Nothing, ref Nothing, ref Nothing, ref Nothing); 18 19 //设置文档宽度 20 wordApp.Selection.PageSetup.LeftMargin = wordApp.CentimetersToPoints(float.Parse("2")); 21 wordApp.ActiveWindow.ActivePane.HorizontalPercentScrolled = 11; 22 wordApp.Selection.PageSetup.RightMargin = wordApp.CentimetersToPoints(float.Parse("2")); 23 Object start = Type.Missing; 24 Object end = Type.Missing; 25 wordDoc.Range(ref start, ref end).Font.Name = "Verdana"; //设置字体 26 wordDoc.Range(ref start, ref end).Font.Size = 10; //设置字体大小 27 wordDoc.Range(ref start, ref end).ParagraphFormat.Alignment = Word.WdParagraphAlignment.wdAlignParagraphCenter; //设置字体局中 28 29 //文档中创建表格 30 Word.Table newTable = wordDoc.Tables.Add(wordApp.Selection.Range, 15, 5, ref Nothing, ref Nothing); 31 //设置表格样式 32 newTable.Borders.OutsideLineStyle = Microsoft.Office.Interop.Word.WdLineStyle.wdLineStyleDouble; //设置外边样式 33 newTable.Borders.InsideLineStyle = Word.WdLineStyle.wdLineStyleSingle; //设置内边样式 34 newTable.Columns[1].Width = 80f; // 设置表格宽度 35 newTable.Columns[2].Width = 90f; 36 newTable.Columns[3].Width = 80f; 37 newTable.Columns[4].Width = 90f; 38 newTable.Columns[5].Width = 90f; 39 newTable.Rows.Height = 20; // 设置表格高度 40 for (int i = 0; i < MyDs.Tables[0].Rows.Count; i++) 41 { 42 //填充表格内容 43 newTable.Cell(1, 1).Range.Text = "职工编号:"; 44 newTable.Cell(1, 2).Range.Text = txt职工编号.Text; 45 newTable.Cell(1, 3).Range.Text = "职工姓名:"; 46 newTable.Cell(1, 4).Range.Text = txt职工姓名.Text; 47 newTable.Cell(2, 1).Range.Text = "民族类别:";//cbox民族 48 newTable.Cell(2, 2).Range.Text = cbox民族.Text; 49 newTable.Cell(2, 3).Range.Text = "出生日期:"; 50 newTable.Cell(2, 4).Range.Text = mBox出生日期.Text; 51 newTable.Cell(3, 1).Range.Text = "年龄:"; 52 newTable.Cell(3, 2).Range.Text = txt年龄.Text; 53 newTable.Cell(3, 3).Range.Text = "文化程度:"; 54 newTable.Cell(3, 4).Range.Text = cbox文化程度.Text; 55 newTable.Cell(4, 1).Range.Text = "婚姻:"; 56 newTable.Cell(4, 2).Range.Text = cbox婚姻.Text; 57 newTable.Cell(4, 3).Range.Text = "性别:"; 58 newTable.Cell(4, 4).Range.Text = cbox性别.Text; 59 newTable.Cell(5, 1).Range.Text = "政治面貌:"; 60 newTable.Cell(5, 2).Range.Text = cbox政治面貌.Text; 61 newTable.Cell(5, 3).Range.Text = "工作时间:"; 62 newTable.Cell(5, 4).Range.Text = mBox工作时间.Text; 63 newTable.Cell(6, 1).Range.Text = "籍贯:"; 64 newTable.Cell(6, 2).Range.Text = cbox省.Text + "省" ; 65 newTable.Cell(6, 3).Range.Text = cbox市.Text + "市"; 66 newTable.Cell(6, 4).Range.Text = "身份证号:"; 67 newTable.Cell(6, 5).Range.Text = txt身份证.Text; 68 newTable.Cell(7, 1).Range.Text = "职称类别:"; 69 newTable.Cell(7, 2).Range.Text = cbox职称类别.Text; 70 newTable.Cell(7, 3).Range.Text = "所在部门:"; 71 newTable.Cell(7, 4).Range.Text = cbox所在部门.Text; 72 newTable.Cell(8, 1).Range.Text = "月工资:"; 73 newTable.Cell(8, 2).Range.Text = txt月工资.Text + label27.Text; 74 newTable.Cell(8, 3).Range.Text = "银行账号:"; 75 newTable.Cell(8, 4).Range.Text = txt银行账号.Text; 76 newTable.Cell(9, 1).Range.Text = "合同起始日期:"; 77 newTable.Cell(9, 2).Range.Text = mBox合同开始.Text; 78 newTable.Cell(9, 3).Range.Text = "合同结束日期:"; 79 newTable.Cell(9, 4).Range.Text = mBox合同结束.Text; 80 newTable.Cell(10, 1).Range.Text = "合同年限:"; 81 newTable.Cell(10, 2).Range.Text = txt合同年限.Text; 82 newTable.Cell(10, 3).Range.Text = "工龄:"; 83 newTable.Cell(10, 4).Range.Text = txt工龄.Text + "年"; 84 newTable.Cell(11, 1).Range.Text = "手机:"; 85 newTable.Cell(11, 2).Range.Text = txt手机.Text; 86 newTable.Cell(11, 3).Range.Text = "毕业时间:"; 87 newTable.Cell(11, 4).Range.Text = mBox毕业时间.Text; 88 newTable.Cell(12, 1).Range.Text = "电话:"; 89 newTable.Cell(12, 2).Range.Text = txt电话号.Text; 90 newTable.Cell(13, 1).Range.Text = "毕业学院:"; 91 newTable.Cell(13, 2).Range.Text = txt毕业学校.Text; 92 newTable.Cell(14, 1).Range.Text = "主修专业:"; 93 newTable.Cell(14, 2).Range.Text = txt主修专业.Text; 94 newTable.Cell(15, 1).Range.Text = "家庭住址:"; 95 newTable.Cell(15, 2).Range.Text = txt家庭地址.Text; 96 97 try 98 { 99 //合并单元格 100 newTable.Cell(1, 5).Merge(newTable.Cell(5, 5)); 101 newTable.Cell(7, 4).Merge(newTable.Cell(7, 5)); 102 newTable.Cell(8, 4).Merge(newTable.Cell(8, 5)); 103 newTable.Cell(9, 4).Merge(newTable.Cell(9, 5)); 104 newTable.Cell(10, 4).Merge(newTable.Cell(10, 5)); 105 newTable.Cell(11, 2).Merge(newTable.Cell(11, 3)); 106 newTable.Cell(12, 2).Merge(newTable.Cell(12, 5)); 107 newTable.Cell(13, 2).Merge(newTable.Cell(13, 5)); 108 newTable.Cell(14, 2).Merge(newTable.Cell(14, 5)); 109 newTable.Cell(15, 2).Merge(newTable.Cell(15, 5)); 110 wordApp.Selection.Cells.VerticalAlignment = Word.WdCellVerticalAlignment.wdCellAlignVerticalCenter;//垂直居中 111 wordApp.Selection.ParagraphFormat.Alignment = Word.WdParagraphAlignment.wdAlignParagraphCenter;//水平居中 112 wordApp.Visible = true; // 显示word文档 113 } 114 catch 115 { 116 } 117 } 118 }