亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C# > 正文

C#生成word記錄實例解析

2020-01-24 02:35:48
字體:
來源:轉載
供稿:網友

本文以實例形式講述了C#生成Word記錄的方法,具體實現代碼如下:

private void button1_Click(object sender, System.EventArgs e){object oMissing = System.Reflection.Missing.Value;object oEndOfDoc = "http://endofdoc";/* /endofdoc是預定義的bookmark */ //創建一個document.Word._Application oWord;Word._Document oDoc;oWord = new Word.Application();oWord.Visible = true;oDoc = oWord.Documents.Add(ref oMissing, ref oMissing,ref oMissing, ref oMissing);//在document的開始部分添加一個paragraph.Word.Paragraph oPara1;oPara1 = oDoc.Content.Paragraphs.Add(ref oMissing);oPara1.Range.Text = "Heading 1";oPara1.Range.Font.Bold = 1;oPara1.Format.SpaceAfter = 24;    //24 pt spacing after paragraph.oPara1.Range.InsertParagraphAfter();//在當前document的最后添加一個paragraphWord.Paragraph oPara2;object oRng = oDoc.Bookmarks.get_Item(ref oEndOfDoc).Range;oPara2 = oDoc.Content.Paragraphs.Add(ref oRng);oPara2.Range.Text = "Heading 2";oPara2.Format.SpaceAfter = 6;oPara2.Range.InsertParagraphAfter();//接著添加一個paragraphWord.Paragraph oPara3;oRng = oDoc.Bookmarks.get_Item(ref oEndOfDoc).Range;oPara3 = oDoc.Content.Paragraphs.Add(ref oRng);oPara3.Range.Text = "This is a sentence of normal text. Now here is a table:";oPara3.Range.Font.Bold = 0;oPara3.Format.SpaceAfter = 24;oPara3.Range.InsertParagraphAfter();//添加一個3行5列的表格,填充數據,并且設定第一行的樣式Word.Table oTable;Word.Range wrdRng = oDoc.Bookmarks.get_Item(ref oEndOfDoc).Range;oTable = oDoc.Tables.Add(wrdRng, 3, 5, ref oMissing, ref oMissing);oTable.Range.ParagraphFormat.SpaceAfter = 6;int r, c;string strText;for(r = 1; r <= 3; r++)for(c = 1; c <= 5; c++){strText = "r" + r + "c" + c;oTable.Cell(r, c).Range.Text = strText;}oTable.Rows[1].Range.Font.Bold = 1;oTable.Rows[1].Range.Font.Italic = 1;//接著添加一些文字Word.Paragraph oPara4;oRng = oDoc.Bookmarks.get_Item(ref oEndOfDoc).Range;oPara4 = oDoc.Content.Paragraphs.Add(ref oRng);oPara4.Range.InsertParagraphBefore();oPara4.Range.Text = "And here's another table:";oPara4.Format.SpaceAfter = 24;oPara4.Range.InsertParagraphAfter();//添加一個5行2列的表,填充數據并且改變列寬wrdRng = oDoc.Bookmarks.get_Item(ref oEndOfDoc).Range;oTable = oDoc.Tables.Add(wrdRng, 5, 2, ref oMissing, ref oMissing);oTable.Range.ParagraphFormat.SpaceAfter = 6;for(r = 1; r <= 5; r++)for(c = 1; c <= 2; c++){strText = "r" + r + "c" + c;oTable.Cell(r, c).Range.Text = strText;}oTable.Columns[1].Width = oWord.InchesToPoints(2); //Change width of columns 1 & 2oTable.Columns[2].Width = oWord.InchesToPoints(3);//Keep inserting text. When you get to 7 inches from top of the//document, insert a hard page break.object oPos;double dPos = oWord.InchesToPoints(7);oDoc.Bookmarks.get_Item(ref oEndOfDoc).Range.InsertParagraphAfter();do{wrdRng = oDoc.Bookmarks.get_Item(ref oEndOfDoc).Range;wrdRng.ParagraphFormat.SpaceAfter = 6;wrdRng.InsertAfter("A line of text");wrdRng.InsertParagraphAfter();oPos = wrdRng.get_Information              (Word.WdInformation.wdVerticalPositionRelativeToPage);}while(dPos >= Convert.ToDouble(oPos));object oCollapseEnd = Word.WdCollapseDirection.wdCollapseEnd;object oPageBreak = Word.WdBreakType.wdPageBreak;wrdRng.Collapse(ref oCollapseEnd);wrdRng.InsertBreak(ref oPageBreak);wrdRng.Collapse(ref oCollapseEnd);wrdRng.InsertAfter("We're now on page 2. Here's my chart:");wrdRng.InsertParagraphAfter();//添加一個chartWord.InlineShape oShape;object oClassType = "MSGraph.Chart.8";wrdRng = oDoc.Bookmarks.get_Item(ref oEndOfDoc).Range;oShape = wrdRng.InlineShapes.AddOLEObject(ref oClassType, ref oMissing, ref oMissing, ref oMissing, ref oMissing,ref oMissing, ref oMissing, ref oMissing);//Demonstrate use of late bound oChart and oChartApp objects to//manipulate the chart object with MSGraph.object oChart;object oChartApp;oChart = oShape.OLEFormat.Object;oChartApp = oChart.GetType().InvokeMember("Application",BindingFlags.GetProperty, null, oChart, null);//Change the chart type to Line.object[] Parameters = new Object[1];Parameters[0] = 4; //xlLine = 4oChart.GetType().InvokeMember("ChartType", BindingFlags.SetProperty,null, oChart, Parameters);//Update the chart image and quit MSGraph.oChartApp.GetType().InvokeMember("Update",BindingFlags.InvokeMethod, null, oChartApp, null);oChartApp.GetType().InvokeMember("Quit",BindingFlags.InvokeMethod, null, oChartApp, null);//... If desired, you can proceed from here using the Microsoft Graph //Object model on the oChart and oChartApp objects to make additional//changes to the chart.//Set the width of the chart.oShape.Width = oWord.InchesToPoints(6.25f);oShape.Height = oWord.InchesToPoints(3.57f);//Add text after the chart.wrdRng = oDoc.Bookmarks.get_Item(ref oEndOfDoc).Range;wrdRng.InsertParagraphAfter();wrdRng.InsertAfter("THE END.");//Close this form.this.Close();}

使用模板生成通用格式Word文件:

如果您要使用自動化功能創建的文檔都是通用格式,則利用基于預設格式的模板的新文檔來開始創建過程會更加容易。與從頭創建文檔相比,將某個模板與 Word 自動化客戶端配合使用有兩大優點:
1.您可以對整個文檔中的對象的格式設置和布局施加更多控制。
2.可以使用較少的代碼創建文檔。
通過使用模板,可以精確地調整表格、段落和其他對象在文檔中的布局,并可為這些對象添加格式設置。通過使用自動化功能,可以基于包含下面這樣的代碼的模板創建新文檔: 在模板中,可以定義書簽,這樣,自動化客戶端就可以在文檔的特定位置加入可變文本,如下所示: 使用模板的另一個優點在于,您可以創建和存儲希望在運行時應用的格式樣式,如下所示:

object oTemplate = "c://MyTemplate.dot";oDoc = oWord.Documents.Add(ref oTemplate, ref oMissing, ref oMissing, ref oMissing);object oBookMark = "MyBookmark";oDoc.Bookmarks.Item(ref oBookMark).Range.Text = "Some Text Here";object oStyleName = "MyStyle";oDoc.Bookmarks.Item(ref oBookMark).Range.set_Style(ref oStyleName);object oStyleName = "MyStyle";oWord.Selection.set_Style(ref oStyleName);

最主要的就是理解word application 的框架層次,其它的就像面向過程編程一樣,一步步寫代碼,其中比較麻煩的是嵌套的表格。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美日韩免费网站| 自拍偷拍亚洲区| 欧美成人性色生活仑片| 国产成人精彩在线视频九色| 538国产精品视频一区二区| 欧美超级乱淫片喷水| 国产日韩av在线播放| 97国产成人精品视频| 国产精品igao视频| 日韩中文字幕免费| 中文字幕亚洲无线码在线一区| 国产精自产拍久久久久久蜜| 国产自产女人91一区在线观看| 成人免费看片视频| 狠狠色噜噜狠狠狠狠97| 日韩三级影视基地| 91网站免费观看| 欧美日韩免费在线观看| 亚洲网址你懂得| 国产精品久久久久久久久粉嫩av| 欧美一性一乱一交一视频| 欧美裸身视频免费观看| 亚洲欧洲美洲在线综合| 亚洲人成电影在线| 91久久精品日日躁夜夜躁国产| 欧美乱大交xxxxx| 懂色av中文一区二区三区天美| 亚洲人成啪啪网站| 久久久精品久久久| 欧美韩日一区二区| 一区二区在线视频| 91在线视频精品| 亚洲国模精品私拍| 久久久精品电影| 国产精品久久久久7777婷婷| 亚洲国产欧美日韩精品| 国产精品三级久久久久久电影| 亚洲国产成人在线播放| 欧美日韩成人免费| 亚洲区中文字幕| 国模视频一区二区三区| 国产成人精品综合久久久| 亚洲日本中文字幕免费在线不卡| 国产69精品久久久久9999| 91免费看片网站| 中文字幕亚洲色图| 国产一区二区三区直播精品电影| 国产精品h在线观看| 亚洲人成伊人成综合网久久久| 国产一区二区视频在线观看| 亚洲第一男人av| 日韩成人中文字幕在线观看| 性欧美视频videos6一9| 欧美另类老女人| 久久久精品一区二区| 精品久久国产精品| 国产精品国产三级国产aⅴ9色| 欧美激情一级欧美精品| 亚洲国产精品久久久久秋霞蜜臀| 国产一区欧美二区三区| 92版电视剧仙鹤神针在线观看| 在线观看国产成人av片| 91久久精品国产91久久性色| 久久久久久成人精品| 国产精品久久久久久五月尺| 国产精品无码专区在线观看| 日本亚洲欧美成人| 亚洲欧美日韩直播| 欧美乱人伦中文字幕在线| 欧美日韩国产一区中文午夜| 亚洲激情在线视频| 国产日韩专区在线| 国产精品草莓在线免费观看| 久久综合伊人77777蜜臀| 日韩亚洲欧美中文在线| 日韩精品视频免费在线观看| 亚洲一区亚洲二区| 色偷偷偷综合中文字幕;dd| 在线观看久久久久久| 国产又爽又黄的激情精品视频| 欧美最猛性xxxx| 日韩欧美在线免费观看| 精品国产老师黑色丝袜高跟鞋| 成人黄色大片在线免费观看| 91免费精品国偷自产在线| 国产精品一区二区久久久久| 国产久一一精品| 久久久精品2019中文字幕神马| 国产视频自拍一区| 最近2019中文字幕一页二页| 欧美大片免费看| xxxxx成人.com| 俺也去精品视频在线观看| 最新亚洲国产精品| 国内精品一区二区三区四区| 俺去亚洲欧洲欧美日韩| 国产日韩精品电影| 欧美激情视频在线| 欧美激情成人在线视频| 国产精品日韩欧美| 欧美日韩免费观看中文| 国产精品激情av在线播放| 欧洲精品在线视频| 国产精品嫩草影院久久久| 日韩在线中文视频| 欧美日韩黄色大片| 在线亚洲欧美视频| 亚洲午夜未删减在线观看| 亚洲成人免费网站| 美女视频久久黄| 国产精品成人在线| 欧美大片在线免费观看| 欧美综合在线观看| 欧美成人性色生活仑片| 欧美日韩亚洲国产一区| 国产一区视频在线| 深夜福利91大全| 国产精品尤物福利片在线观看| 成人免费视频a| 精品久久久av| 成人久久久久久| 性欧美亚洲xxxx乳在线观看| 日韩精品在线视频| 色在人av网站天堂精品| 亚洲欧美日韩精品久久亚洲区| 精品亚洲一区二区三区在线观看| 91精品91久久久久久| 久久精品国产v日韩v亚洲| 亚洲精品中文字幕av| 69av成年福利视频| 久青草国产97香蕉在线视频| 久久精品亚洲94久久精品| 国产xxx69麻豆国语对白| 亚洲国产日韩欧美在线99| 久久精品视频在线观看| 中文精品99久久国产香蕉| 中文字幕欧美视频在线| 69av在线播放| 欧美激情一级精品国产| 亚洲欧美日韩第一区| 久久777国产线看观看精品| 欧美性受xxx| 日韩在线观看电影| 中文字幕欧美日韩精品| 欧美日韩国产色| 国产精品十八以下禁看| 日韩电影大全免费观看2023年上| 一区二区三区四区在线观看视频| 亚洲女人初尝黑人巨大| 欧美日韩另类视频| 97在线视频国产| 97精品国产97久久久久久春色| 色婷婷av一区二区三区在线观看| 欧美午夜www高清视频| 国产精品久久久久7777婷婷| 国产精品高清免费在线观看| 在线视频国产日韩| 亚洲天堂色网站| 国产91|九色| 久久久久久久97| 91极品视频在线| 国内精品模特av私拍在线观看| 国产九九精品视频| 日韩日本欧美亚洲|