代码改变世界

word2007插件开发经验备忘2--如何操作word

2010-10-29 13:53  轩脉刃  阅读(983)  评论(0编辑  收藏  举报

对于word的操作,(MSDN)上已经有了很具体很详细的解释 Visual Studio Tools for Office。


http://msdn.microsoft.com/zh-cn/library/d2tx7z6d(VS.80).aspx

 

word的操作前一定要看的东西叫做Word 对象模型

 

 

Application就是说这个类是站在了应用程序的高度。对应的操作就是启动word程序

操作就很容易想象了,打开word文档,新建word文档......那么在word插件开发中这个东西在哪里找呢?答案:Global.ThisAddIn.Application.........这里的Global是全局类,控制全局变量....

 

下面就是Document,就是对一个文档进行操作的类,增加段落,修改文档名称....那么Document插件中这个东西在哪里找?Global.ThisAddIn.Application.Document......


Seletion呢,也超容易理解吧,选择的东东,就是我们平时操作有事没事就高亮的文档部分...值得提的是两点:
 1,selection不一定是连续的
 2,典型的选中的操作是.select()。比如我这个paragraph要选中,paragraph.select();
 那么这个在插件中怎么找到呢?对了,答案:Global.ThisAddIn.Application.Document.Selection;(别砸我...)
Range,就是表示一个范围,这个有点难理解,和seletion不一样,比如我们在word里面画个表,那么我要告诉电脑,在第一行第一列的框框范围填hello,怎么表达我们的这个愿望呢:
 table.cell(1,1).range.text = "hello";
 range里面可以有selection,可以有多个paragrah.....
好了,下面贴一些东东

代码
app = Globals.ThisAddIn.Application;
doc
= Globals.ThisAddIn.Application.ActiveDocument;

.....
page
= (int)app.Selection.get_Information(Word.WdInformation.wdActiveEndPageNumber);
Page_box.Text
= page.ToString();

....
newDoc
= app.Documents.Add(ref templatePath,ref missing,ref missing,ref missing);

....
((Word._Application)app).Quit(
ref missing, ref missing, ref missing);