`
sty2008boy
  • 浏览: 301592 次
  • 性别: Icon_minigender_1
  • 来自: 太原
社区版块
存档分类
最新评论

C#操作Word生成目录

 
阅读更多
OperateWord ow = new OperateWord();
Microsoft.Office.Interop.Word.ApplicationClass ss = ow.WordApplication;
            AddContent(ref ss);
			
 void AddContent(ref   Microsoft.Office.Interop.Word.ApplicationClass app)
        {

            Object oMissing = System.Reflection.Missing.Value;
            Object oTrue = true;
            Object oFalse = false;
            Object oUpperHeadingLevel = "1";
            Object oLowerHeadingLevel = "3";
            Object oTOCTableID = "TableOfContents";

            app.Selection.Start = 0;

            app.Selection.End = 0;//将光标移动到文档开始位置

            object beginLevel = 2;//目录开始深度

            object endLevel = 2;//目录结束深度

            object rightAlignPageNumber = true;// 指定页码右对其

            /*
             * Range
             * UserHeadingStyles 使用heading风格
             * UpperHeadingLevel 增加heading级别
             * LowerHeadingLevel 减小heading级别
             * UserFields 使用fields
             * Tableid tableid
             * RightAlignPageNumbers 右对齐页数
             * IncludePageNumbers 包含页数
             * Addedstyles 添加风格
             * UserHyperlinks 使用超链接
             * HidePageNumbersInweb 隐藏页数
             * UseOutLineLevels 使用提纲级别
             * TableOfContents 内容表
             */
            app.Application.ActiveDocument.TablesOfContents.Add(app.Selection.Range, ref oTrue, ref oUpperHeadingLevel,
                ref oLowerHeadingLevel, ref oMissing, ref oTOCTableID, ref oTrue,
                ref oTrue, ref oMissing, ref oTrue, ref oTrue, ref oTrue);//添加目录

            //写入目录
        }

 

 参考1:

private void button1_Click(object sender, EventArgs e)
        { 
            Object oMissing = System.Reflection.Missing.Value;
            Object oTrue = true;
            Object oFalse = false;
             
            Microsoft.Office.Interop.Word.Application oWord = new Microsoft.Office.Interop.Word.Application();
            Microsoft.Office.Interop.Word.Document doc = new Microsoft.Office.Interop.Word.Document(); 

            oWord.Visible = true;
            object fileName = this.textBox1.Text;
            doc = oWord.Documents.Open(ref fileName,
            ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing,
            ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing,
            ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing);

            //---------------------------------------------------------------------------------------------------------------------
            oWord.Selection.Paragraphs.OutlineLevel = WdOutlineLevel.wdOutlineLevel2;
            oWord.Selection.Paragraphs.OutlineLevel = WdOutlineLevel.wdOutlineLevel3;
            oWord.Selection.Paragraphs.OutlineLevel = WdOutlineLevel.wdOutlineLevelBodyText;

            object x = 0;
            Range myRange = doc.Range(ref x, ref x);  
            Object oUpperHeadingLevel = "1";
            Object oLowerHeadingLevel = "3";
            Object oTOCTableID = "TableOfContents";
            doc.TablesOfContents.Add(myRange, ref oTrue, ref oUpperHeadingLevel,
                ref oLowerHeadingLevel, ref oMissing, ref oTOCTableID, ref oTrue,
                ref oTrue, ref oMissing, ref oTrue, ref oTrue, ref oTrue);
            //---------------------------------------------------------------------------------------------------------------------
            //Object oSaveAsFile = fileName;
            //doc.SaveAs(ref oSaveAsFile, ref oMissing, ref oMissing, ref oMissing,
            //    ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing,
            //    ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing,
            //    ref oMissing, ref oMissing);
        }

        private void button2_Click(object sender, EventArgs e)
        {
            OpenFileDialog fd = new OpenFileDialog();
            if (fd.ShowDialog() == DialogResult.OK)
            {
                this.textBox1.Text = fd.FileName;
            }
        }

参考2:

      void AddContent(ref   Word.Appliction app)

      {

              app.Selection.Start=0;

              app.Selection.End=0;//将光标移动到文档开始位置

             object beginLevel=2;//目录开始深度

             object endLevel=2;//目录结束深度

             object rightAlignPageNumber=true;// 指定页码右对其

            app.ActiveDocument.TablesOfContents.Add(app.Selection.Range,ref miss,rightAlignPageNumber,ref miss,

                                                     ref miss,ref miss,ref miss,ref miss);//写入目录



 }

 

分享到:
评论

相关推荐

    C#操作word模板

    ### C#操作Word书签模板知识点详解 #### 一、制作Word书签模板 ...综上所述,通过上述步骤,我们可以使用C#来操作Word文档中的书签,实现自动化文档生成的需求。这种方法不仅提高了效率,而且减少了人为错误的可能性。

    C# 提取Word目录适用WPS,Microsoft.Office.Interop.Word

    3. **获取目录(大纲)**:Word的目录实际上是基于文档中的标题样式(Heading Styles)生成的。我们可以通过`Document`对象的`Sections`属性和`Headers`属性来获取这些信息。然后,利用`Find`方法查找所有使用标题...

    C# 操作 word

    以上就是C#操作Word生成目录和添加内容的基本步骤。在实际项目中,可能需要根据具体需求进行更复杂的交互,例如处理多个文档、合并文档、自动化报告生成等。熟练掌握这些技巧,可以极大地提高工作效率,尤其在文档...

    C#操作Word文件

    ### C#操作Word文件知识点详解 #### 一、概述 在C#中操作Word文件是一项常见但非常实用的技术。这不仅适用于自动化办公场景,还能帮助开发者实现数据导出、报告生成等多种需求。本文将详细介绍如何使用C#进行Word...

    C#动态生成word文档

    C#动态生成word文档 C#动态生成word文档是指使用C#语言编程来生成Word文档,并填充数据的过程。要实现这个功能,首先需要添加引用:添加引用->COM->Microsoft Word 11.0 Object Library。然后在.cs文件中添加using ...

    Office2007Word目录自动生成详细方法

    本教程将详细解释如何自动为Word文档生成目录,确保您的文档结构清晰易懂。 ### 第一部分:生成目录前的准备工作 #### 1.1 构思目录大纲 在开始创建目录之前,你需要先规划好文档的大纲。目录通常包括各个章节、...

    C#生成word压缩下载

    在C#编程环境中,生成Word并进行压缩下载是一项常见的任务,尤其在B/S(浏览器/服务器)架构的应用中。此场景通常涉及到动态生成文档、模板处理以及文件压缩和下载服务。下面将详细解释这一过程涉及的关键知识点。 ...

    C# 创建WORD文档

    在C#中创建Word文档是一项常见的任务,尤其在自动化办公流程、报告生成或者数据导出等场景中。这里,我们主要探讨如何使用C#来创建和操作Microsoft Word文档,以及解决可能遇到的问题。 首先,要实现这个功能,我们...

    用C#动态生成Word文档并将数据填入Word表格中

    ### 使用C#动态生成Word文档并将数据填入Word表格中的技术要点 在现代办公环境中,自动化处理文档变得越来越重要。特别是在需要频繁生成报告、发票或其他标准化格式文档的情况下,利用编程语言来实现文档的自动化...

    C#编程实现动态生成Word文档

    在C#编程中,动态生成Word文档是一种常见的需求,尤其在报表生成、自动化报告或数据导出场景下。为了实现这一功能,我们需要利用Microsoft Office的COM接口,这允许我们在C#程序中直接操控Word对象模型。以下是使用...

    C#实现word转图片

    C#的`System.IO`命名空间提供了所有必要的类和方法,如`File`和`Directory`,用于文件和目录的读写操作。 7. **异常处理**:在实际的代码实现中,需要对可能出现的错误情况进行处理,例如文件不存在、权限问题、...

    C#把Word和Excel生成缩略图示例代码Aspose

    C#把Word和Excel生成缩略图示例代码-附带Aspose.Cells和Aspose.Words插件 使用 Aspose.Cells 生成Excel缩略图 使用 Aspose.Words 生成Word缩略图 项目中 bin目录下的 Aspose.Cells.dll 和 Aspose.Words.dll 是可...

    C# HtmlToWord 将HTML文件转换成word文档

    总结来说,C#中将HTML文件转换为Word文档是一个涉及到HTML解析、图片处理和Word文档生成的过程。通过选择合适的库和编写适当的代码逻辑,可以高效地实现这个功能,即使在没有安装Word软件的环境下也能完成转换,并且...

    C#操作Word文件(排版,调整格式)[文].pdf

    在C#编程中,操作Microsoft Word文件是一种常见的需求,特别是在自动化文档处理、报告生成或数据导出等场景。本示例代码展示了如何使用C#和`Microsoft.Office.Interop.Word`库来创建、排版和调整Word文档的格式。...

    C#调用word的实现

    使用C#来操作Word文档不仅可以提高工作效率,还能使应用程序的功能更加完善。本文将详细介绍如何使用C#来调用Word并进行相关操作,包括创建文档、插入表格、设置样式等。 #### 前置准备 要使用C#操作Word文档,...

    C#使用spire生成word、pdf及使用QRCoder生成二维码

    在IT行业中,开发人员经常需要处理各种文档生成和编码任务,C#作为.NET框架下的主要编程语言,提供了丰富的库来支持这些操作。本项目重点介绍了如何利用C#结合Spire.Doc和QRCoder库来创建无水印的Word文档、PDF文件...

    c#实现的word文件转CHM文件源码Word2CHM

    3. **Microsoft Office Interop**:为了读取和操作Word文档,C#代码通常会使用Microsoft Office Interop组件,这允许C#程序与Office应用程序进行交互,如打开、读取和写入Word文档。 4. **HTML和CSS**:在转换过程...

Global site tag (gtag.js) - Google Analytics