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生成目录的更多相关文章
- Aspose.Words操作word生成PDF文档
Aspose.Words操作word生成PDF文档 using Aspose.Words; using System; using System.Collections.Generic; using ...
- VBA操作word生成sql语句
项目开始一般都是用word保存下数据库的文档 但是从表单一个一个的建表实在是很困难乏味,查查资料 1.可以生成一个html或者xml,检索结构生成sql.但是这个方式也蛮麻烦 2.查到vba可以操作w ...
- DocX操作word生成报表
1.DocX简介 1.1 简介 DocX是一个在不需要安装word的情况下对word进行操作的开源轻量级.net组件,是由爱尔兰的一个叫Cathal Coffey的博士生开发出来的.DocX使得操作w ...
- word生成目录的pdf
在很多情况下,需要将Word转换为带目录书签的PDF,方便pdf阅读,所以可以使用word自带的pdf转换,在转换时设置相关即可 注意:待转换Word中应该有目录,可以用Word中的标题来自动生成目录 ...
- word 生成目录
生成目录: (1)Ctrl+End,到达文档的最后一页: (2)"插入"菜单--引用--索引和目录(此时出现索引和目录对话框): (3)单击"目录"选项卡 a. ...
- [转载]java操作word生成水印
应用场景 为了保护版权或辨别文件的真伪,有时需要在生成的Word文件中动态添加水印,PageOffice组件的WaterMark类就封装了给在线编辑的Word文件添加水印这一功能,调用接口非常简单. ...
- [原创]java操作word生成水印
应用场景 为了保护版权或辨别文件的真伪,有时需要在生成的Word文件中动态添加水印,PageOffice组件的WaterMark类就封装了给在线编辑的Word文件添加水印这一功能,调用接口非常简单. ...
- c# 操作Word总结(车)
在医疗管理系统中为保存患者的体检和治疗记录,方便以后的医生或其他人查看.当把数据保存到数据库中,需要新建很多的字段,而且操作很繁琐,于是想到网页的信息创建到一个word文本中,在显示的时,可以在线打开 ...
- c# 操作Word总结【转】
http://www.cnblogs.com/eye-like/p/4121219.html 在医疗管理系统中为保存患者的体检和治疗记录,方便以后的医生或其他人查看.当把数据保存到数据库中,需要新建很 ...
随机推荐
- Drupal 7.23:函数module_invoke_all()注释
/** * Invokes a hook in all enabled modules that implement it. * * All arguments are passed by value ...
- FreeMarker笔记 前言&第1章 入门
简介 简介 FreeMarker是一款模板引擎:一种基于模板的.用来生成输出文本(任何来自于HTML格式的文本用来自动生成源代码)的通用工具.它是为Java程序员提供的一个开发包或者说是类库.它不是面 ...
- 【LeetCode】107 - Binary Tree Level Order Traversal II
Given a binary tree, return the bottom-up level order traversal of its nodes' values. (ie, from left ...
- mapreduce编程模型你知道多少?
上次新霸哥给大家介绍了一些hadoop的相关知识,发现大家对hadoop有了一定的了解,但是还有很多的朋友对mapreduce很模糊,下面新霸哥将带你共同学习mapreduce编程模型. mapred ...
- html5的一些表单属性
IE8及以下不能很好支持这些属性 <pre>input属性: placeholder:输入框的默认值,向用户显示描述性说明文字或者提示信息 autocomplete:值为on和off..o ...
- linux命令 screen的简单使用
在远程命令行下某些长时间的操作,一旦网络出现故障,后果可能会很严重,在这种情况下可以使用screen命令来解决.screen可以创建一个session,在不小心断开以后还可以继续恢复session保存 ...
- erlang 基础知识
一 数据类型 1. 整数 Integer Erlang可表示任意大的整数,大整数自动转换成bignums类型,比固定大小的整数类型相对效率较低. Base#Value 表示基数不是10的整数.如:2# ...
- dom 拖拽回放
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- 通过用 .NET 生成自定义窗体设计器来定制应用程序
通过用 .NET 生成自定义窗体设计器来定制应用程序 https://www.microsoft.com/china/MSDN/library/netFramework/netframework/Cu ...
- Codeforces Round #367 (Div. 2) D. Vasiliy's Multiset (0/1-Trie树)
Vasiliy's Multiset 题目链接: http://codeforces.com/contest/706/problem/D Description Author has gone out ...