存档在 ‘VSTO开发’ 分类中.

VSTO如何与Visual Studio相结合

当使用VSTO创建Word或Excel解决方案时,可以直接从Visual Studio里与Word或Excel应用程序相交互。这是因为VSTO与Visual Studio已整合在一起。
Word和Excel作为设计器
在已经创建新的Excel或Word文档或模板项目后,该文档在Visual Studio环境里作为设计器是可用的。事实上,整个应用程序在Visual Studio里是可用的。
设计器是正创建的应用程序的用户接口的容器。例如,如果在Word VBA解决方案里创建用户窗体,VBE为应用程序显示该用户窗体作为设计器。然后,可以添加控件到用户窗体。当使用VSTO创建解决方案时,同样的经历现在可用于Word和Excel解决方案中。该文档是一个设计器,可以从工具箱中拖动控件在其中。
能够在设计器中添加两种类型的控件:Windows Forms控件和宿主控件。
设计器是该应用程序的可见的表现,每个设计器与代码文件相关联(正如先前提到的,该代码有时被称为代码后台的文件)。可以使用一些方法从设计器视图切换到代码视图。一种方式是在文档中单击右键,然后在快捷菜单中单击查看代码。
当在代码视图中时,可以右键单击代码编辑器,并从快捷菜单中选择查看设计器,在Visual Studio里打开该设计器。也可以在解决方案管理器中右击代码文件,打开快捷菜单,会提供相看代码和相看设计器选项。
viewdesigner
图:从代码编辑器切换到设计器
在VSTO里的代码文件
当创建新的VSTO解决方案时,Visual Studio创建许多文件。例如,如果在Visual Studio里
resourcemanagement
图:当选择显示所有文件时在解决方案管理器中显示的文件
在ThisDocument.vb源文件中编写代码。该文件包含ThisDocument类,有两个事件句柄(ThisDocument_Startup和ThisDocument_Shutdown)。可以在写字板里打开这个文件查看其内容。当然,不能使用写字板添加代码到文件中。ThisDocument.vb文件对Visual Studio里的文件有用。可以在解决方案管理器中右击该文件,选择查看代码。
这里,可以使用Visual Studio IDE的所有丰富的功能,包括IntelliSense和调试工具来使用代码任务更容易。在ThisDocument.vb后面有一些额外的文件,包含VSTO自动产生的代码。这些文件是ThisDocument.Designer.xml和ThisDocument.Designer.vb。

创建VSTO解决方案

使用VBA创建Office定制与使用VSTO创建Office解决方案有一些类似,但有许多的不同。
使用VBA创建Office解决方案
当创建VBA解决方案时,在Office应用程序中开始。在Word和Excel中,可以按Alt+F11打开VBE编辑器。使用VBE,可以访问当前打开的任何文档项目,基于该文档的模板,以及任何全局可访问的模板,或者附属的或全局的可用模板,例如Normal.dot。
当添加代码到ThisDocument或ThisWorkbook中,或者添加代码到该文档项目中的新模块中,该代码将仅对已添加该代码的文档或工作簿中可用。如果添加该代码到一个模板中,那么代码将对使用该应用程序打开的任何基于该模板的文档或者全局模板都是可用的。
可以从Outlook中访问VBE,但是Outlook每次仅支持一个VBA项目。特别地,开发者使用IDTExtensibility2接口为Outlook创建组件对象模型(COM)加载项。
使用VSTO创建Office解决方案
当创建一个VSTO解决方案时,将在Visual Studio IDE中开始。这里,可以选择为Word或Excel来创建文档或模板解决方案,或者为Outlook的加载项解决方案。如果创建Outlook加载项,那么将对整个Outlook应用程序都可用。如果选择Word或Excel文档,则该代码仅对那个文档有用。如果选择Word或Excel模板,则代码对任何从该模板中创建的文档都是可用的。
当使用VSTO来创建Word或Excel定制时,可以从Visual Studio里完全访问Word或Excel应用程序和对象模型。当创建加载项时,可以通过Application对象访问应用程序中的所有对象,但是没有从Visual Studio里直接访问该应用程序。
为VSTO文档级的解决方案编写的代码被存储在与该文档相联系的文件中,这经常被称作为“代码后面的”文件,因为代码在后台以集的形式支持该文档功能,而不是像VBA代码一样内嵌于文档。当代码文件被编译成集(DLL)时,接着与该文档相联系。所编译的代码可以仅在文档级被访问(而不是应用程序级)。
也可以基于Excel模板或Word模板创建VSTO解决方案。在此情形下,无论何时基于该模板打开一个文档,VSTO定制代码都将运行。不能够使用VSTO为Word 2003和Excel 2003创建应用程序级的定制,然而可以使用VSTO 2005 SE为几个Office应用程序(包括号Word 2003和Excel 2003)创建应用程序级的加载项。
以加载项的形式创建VSTO和VSTO 2005 SE的应用程序级的解决方案,无论何时开启应用程序时都将装载该加载项,而在关闭该应用程序时则会卸载该加载项。可以创建加载项来定制应用程序的用户界面,例如在Excel 2003中添加新的菜单或菜单项,在Word 2007中添加按钮到功能区,或者当一个应用程序事件发生时执行特定的操作。
使用VBA,在Word中通过添加代码到全局模板中创建应用程序级的定制,可能是Normal.dot模板或通过存储模板在Startup目录中使自定义模板成为全局模板。这种方案在VSTO中不被支持,因为VSTO创建定制仅特定于单个的文档,而不是在Word中打开的每个文档。如果使用Word模板创建VSTO定制,然后将其存储在Startup目录中,与该模板相关的定制的代码对所有打开的文档都不可用,它仅在基于该模板的文档被打开时运行。如果想为Word创建应用程序级的定制,应该使用VSTO 2005 SE创建加载项。
当使用VBA定制Excel时,可以使用Excel加载项文件(.xla文件)创建应用程序级加载项类型。然而,不能使用一个已存在的.xla文件创建VSTO解决方案,因为在项目创建中不支持该文件类型。虽然可以创建一个Excel VSTO解决方案,然后保存该文件为.xla文件运行定制代码,但这种方案不被Microsoft所支持。
项目类型
当打开Visual Studio 2005并创建一个新项目时,将发现很多与Office相关的模板可用。这些项目出现在新建项目对话框中,并取决于安装Visual Studio时所选择的环境设置。
使用VSTO的默认安装,可以创建Word文档、Word模板、Excel工作簿、Excel模板或Outlook加载项项目。可以选择地安装InfoPath工具集,使得InfoPath模板可用,如下图所示。要查看这些项目模板,在菜单“文件”中,单击“新建项目”。可以扩展Visual Basic节点来展示项目模板类别。要在新建项目对话框的模板窗格中显示VSTO项目模板,单击Office节点。
VSTONewItem1
图1:新建项目对话框中的VSTO模板
如果在VSTO之上已安装了VSTO 2005 SE,在新建项目对话框中有一些其它模板可用,如图2所示。
VSTONewItem2
图2:在新建项目对话框中的VSTO 2005 SE模板
注意,在2007外接程序节点中有一些为Office 2007的加载项模板,同样,在2003外接程序节点中有一些为Office 2003的项目模板。
Excel工作簿
Excel工作簿项目模板能够使您为Excel工作簿(.xls文件)创建VSTO定制。当在新建项目对话框中选择Excel工作簿并单击确定后,Visual Studio 2005呈现VSTO项目向导。使用该向导,可以选择自定义新工作簿、或者可以选择已存在的工作簿,如图3所示。
VSTOWorkbookWizard1
图3:VSTO项目向导
要选择一个已存在的文档,单击“浏览”并导航到想要创建的工作簿。不会使用所选择的工作簿,VSTO产生一个副本,并将其保存在存储VSTO解决方案的同一文件夹中。
Excel模板
Excel模板项目能使您为Excel模板(.xlt文件)创建VSTO定制。当选择Excel模板时,可以创建一个新模板或者选择现有的模板。要选择现有的模板,必须选择一个.xlt扩展名的文件。如果想要创建一个基于现有工作簿的模板,在向导里选择该工作簿之前,在Visual Studio外将该工作簿保存为模板。VSTO将复制该模板到保存VSTO解决方案的相同目录中。
Word文档
Word文档项目模板使得可以为Word文档(.doc文件)创建一个VSTO定制。当在新建项目对话框中选择Word文档并单击确定时,Visual Studio显示VSTO项目向导。在该向导中,创建一个新文档或者选择现有的。VSTO产生所选文档的副本,将在存储VSTO解决方案的同一目录中保存该文档副本。
Word模板
Word模板项目能够使您为Word模板(.dot文件)创建一个VSTO定制。当选择Word模板时,可以创建一个新模板或选择现有的。要选择现有的模板,应选择扩展名为.dot的文件。在基于现有文档创建模板,必须在向导中选择该文档之前首先在Visual Studio之外将该文档保存为一个模板。VSTO将复制该模板到存储VSTO解决方案的同一目录中。
Outlook加载项
在Outlook加载项模板中,可以使用VSTO为Outlook创建加载项。当选择Outlook加载项时,Visual Studio在代码视图中打开该加载项项目,显示ThisApplication_Startup和ThisApplication_Shutdown事件句柄。VSTO也为Outlook解决方案创建一个安装项。该安装项被使用来注册和发布Outlook加载项。
VSTO 2005 SE加载项
如果已经安装了VSTO 2005 SE,您将发现创建几种Office 2003和Office 2007应用程序的额外的项目模板,包括Word、Excel、Outlook、PowerPoint、Visio和InfoPath(仅2003)。这些加载项的架构与VSTO Outlook加载项稍有不同。当创建VSTO 2005 SE加载项时,Visual Studio在代码视图中打开该加载项,显示ThisAddin_Startup和ThisAddin_Shutdown事件句柄。

注:本文整理自《VSTO for Mere Mortals》─—A VBA Developer’s Guide to Microsoft Office Development Using Visual Studio 2005 Tools for Office,有删节。

标签: 

VSTO的特征

VSTO提供了一种编程模型,扩展了Word和Excel中的一些普通对象,例如书签或单元格区域。现在,这些对象有了数据绑定功能。例如,可以绑定数据库中的一个字段到Excel的单元格中。使用数据绑定,可以自动地使用数据填充文档的区域并在用户输入时更新数据库中的数据。
VSTO编程模型后面的原理是从数据描述中分离数据。现在可以直接访问驻留在数据源中的数据,而不必查找在文档中显示数据的该对象。数据源可以包括数据库、一个可扩展标识语言(XML)文件、或者甚至是一个文本文件。
数据绑定为服务器端编程是特别有用的。VSTO能够使您在文档中存储可从外部应用程序中访问的数据(不需要打开该文档)。通过在XML数据岛或数据缓存中存储数据来处理这样的操作。如果在数据缓存中存储数据,然后可以访问在服务器中的数据缓存,而不必在服务器中打开文档或者安装Word或Excel。
另一种VSTO对象扩展的方式是,它们添加在对象本身中不可用的事件。例如,现在可以根据工作表单元格的变化事件来编程,而不必遍历对象模型,编写多行代码来解决变化的单元格。当添加这些扩展的模型到文档或工作表中时,VSTO创建它们作为第一个类.NET对象,可以直接编程。这些对象被称作为宿主控件,添加宿主控件的文档或工作表被称作为宿主项目。
使用VSTO 2005 SE,可以为Office 2003和2007 Microsoft Office System创建应用程序级的加载项,VSTO 2005 SE也能够使您定制Office 2007的新UI,包括功能区、自定义任务窗格和Outlook窗体区域。
宿主项目和宿主控件
正如先前所提及的,宿主项目是一个类,代表到Office对象模型里的输入点。在Excel中当创建Excel解决方案时默认创建了四个宿主项目:Workbook,Sheet1,Sheet2和Sheet3。如果在设计时添加更多的工作表,则创建的新工作表作为宿主项目。通过使数据绑定和提供额外的事件,宿主项目扩展了原始的Office文档。
考虑宿主项目的一种方式是,它是Word或Excel的设计面,担当控件的容器。同样地,在VBA中添加控件到用户窗体中,可以添加Windows Forms控件,与宿主控件到宿主项目中一样。例外的规则是工作簿宿主项目,工作簿可以包含组件,但不是控件。
在Word中,当在VSTO中创建Word解决方案时,仅仅一个宿主项目─—文档─—被自动创建。在Excel中,每一个工作表、图表工作表和工作簿被考虑一个宿主项目。如果在设计时添加更多的工作表,VSTO在项目中创建它们作为宿主项目。
如果在运行时自动添加,则VSTO不会自动创建工作表作为宿主项目。这意味着如果编程添加一个工作表到工作簿中,则该工作表被创建作为原始的Excel工作表而不是宿主项目。因为该工作表不是一个宿主项目,不能获取该工作表的扩展功能,并且不可以编程在其中添加控件,正如在设计时创建工作表时可以做的一样。控件仅仅可以被添加到宿主项目工作表。
VSTO提供了所有控件的Controls集合(宿主控件及Windows Forms控件),您可以将它们添加到文档或工作表中。无论何时添加控件到文档中,它都被添加到文档的Controls集合。在Excel中,每个工作表都包含其自已的Controls集合实例。可以在设计时或运行时创建宿主控件。VSTO提供了许多更有帮助的方法,可以使用这些方法来动态添加宿主控件到文档中。
在Word对象模型中,VSTO扩展了三个对象到宿主控件中:Bookmark,XMLNode和XMLNodes控件。除了能够使数据绑定和为这些控件的事件外,VSTO改善了一些对象的功能。例如,赋给文本到某VSTO书签不会导致该书签被删除(当文本被赋给原来的Word书签时)。扩展的Excel对象包括NamedRange,ListObject,XMLMappedRange和Chart。
可以使用Word或Excel的原始功能添加宿主控件到文档中。例如,如果设计时在Word中从“插入”菜单选择书签,则它被添加为一个宿主控件。这些控件中的某些控件可以从工具箱中被拖动到文档中。工具箱包含可以添加到设计面中的所有控件,与VBE中的工具箱的概念相似。
当Excel工作簿设计器获取焦点时,在Excel控件选项卡中的工具箱里会出现NamedRange和ListObject控件。当Word文档获取焦点时,在Word控件选项卡里的工具箱中的书签控件是可用的。下图显示Word和Excel的工具箱中的宿主控件。
ExcelToolbox
图:Visual Studio工具箱中Excel的宿主控件
WordToolbox
图:Visual Studio工具箱中的Word宿主控件
为Word和Excel中存在另外的宿主控件,但这些宿主控件在工具箱中是不可用的。这些控件包括Excel的Chart和XMLMappedRange控件,以及Word的XMLNode和XMLNodes控件。
除了数据绑定外,为扩展的Office对象提供的主要功能是事件。许多Office对象模型对象本身不会公开事件。例如,在VBA中确定是否已修改单元格值的唯一方式是首先检查整个工作表的Change事件,然后确定在该工作表中特定的单元格里是否发生了变化。使用VSTO,可以直接在NamedRange控件的Change事件句柄中编写代码。在Word中,现在可以在Bookmark的BeforeRightClick事件句柄里编写代码。例如,可以创建当右击书签里的文本时显示的上下文菜单。
Windows Forms控件
Word和Excel有许多可以直接添加到文档中的控件,然后根据编写的VBA代码来响应该控件的事件。这些控件在文档中不总是稳定的,并且对许多控件的可用都有限制。在VSTO中不支持这些控件的创建。相反,可以使用Windows Forms控件。
VSTO使得可以添加Windows Forms控件到文档或工作表中。这些控件有通常可以添加到Windows Form中的常规Windows Forms控件的所有属性和事件,但是在文档中控件的行为与Windows Form中控件的行为相比有一些差异。例如,不能够设置驻留在文档中控件的Tab键顺序,因为不能从文档中的一个控件按Tab键切换到另一个控件。
可以在设计时或运行时添加Windows Forms控件到文档中。在使用宿主控件时,添加Windows Forms控件到文档或工作表的Controls集合。Winows Forms控件不会直接地被嵌入到文档中。相反,它们被嵌入到一个ActiveX控件中,而该控件被嵌入到文档中。因此,不能以添加控件到Windows Form的相同方式编程添加控件到文档中。在VSTO中,必须使用更有帮助的方法来编程添加控件到文档中。恰好有一个通用的为添加控件的AddControl方法,来指定想要的控件。
因为技术上的限制,当创建解决方案时(在设计时),不可以添加一些控件到文档中。因此,VSTO仅添加Windows Forms控件的一个子集到工具箱中为Word和Excel文档使用。例如,为了在设计时组合相关的控件,不能够拖动GroupBox控件到文档中,因此GroupBox控件在工具箱中是不可用的。下图显示了在设计时可以添加到Word文档或Excel工作表中的所有支持的Windows Forms控件。
ExcelToolboxForm
图:Excel中支持的Visual Studio工具箱中的Windows Forms控件
WordToolboxForm
图:Word中支持的Visual Studio工具箱中的Windows Forms控件
除了在文档中支持宿主控件和Windows Forms控件外,VSTO有一些其它的功能。可以在文档或工作表中添加智能标记,在文档中添加缓存数据,定制任务窗格,创建可管理的加载项,编写更多安全的定制代码,定制Office 2007中的UI,以及在更健壮的开发环境中工作。
智能标记(Smart Tags)
在以前,为Word和Excel创建智能标记决不是一件容易的事。VSTO提供了一个SmartTag类,能够使您通过指定用来识别的术语在文档中添加智能标记,当这些术语被识别时,就会采取相应的操作。注意,智能标记被指定给文档而不是整个应用程序。因此,可以控制特定文档的智能标记数量。
自定义任务窗格
Microsoft Office 2003在任务窗格中提供了应用程序的一些UI元素,例如“样式”和“格式”任务窗格(Word)和“新建工作簿”任务窗格(Excel)。没有使用VBA来定制这种任务窗格的方式,但是可以使用Visual Basic 6或Visual Basic.NET或使用XML创建智能文档。这些定制任务窗格的方法是相当困难的。此外,必须实现ISmartDocument接口,并且需要许多行代码来完成只是添加单个控件到任务窗格中的操作。
VSTO能使您仅用很少的代码就能定制文档操作任务窗格。VSTO提供了一个ActionsPane对象,仅使用一行代码就能添加Windows Forms控件或自定义控件到Word或Excel任务窗格中。VSTO操作窗格建立在已存在的ISmartDocument技术上,但是VSTO考虑了所有为您实现的细节。例如,不需要创建并附加XML扩展包。
在Word和Excel中,操作窗格仅对文档级的定制有效。如果想在Office 2007中定制新的应用程序级的自定义任务窗格,必须添加控件到CustomTaskPane对象中。
在文档中缓存数据
VSTO提供了数据缓存,用来存储文档里数据集中的数据,称作为数据岛。可以在数据岛中缓存数据,以便在没有连接到网络中时仍然可以访问数据,并且在重新建立网络连接后可以更新数据源。
这项功能在服务器中存在目标文档时,也是有用的。在服务器中运行Word或Excel不是Microsoft支持的方案。相反,VSTO能够使您访问文档里的数据,而不必运行在服务器中的Word或Excel。
可管理的加载项
VSTO提供了Outlook加载项工程模板,使得可以为Outlook 2003创建可管理的加载项。VSTO 2005 SE能够为Office 2003和Office 2007创建加载项。使用VSTO创建的加载项更稳定,并且有更简单的事件模型为装载和卸载该加载项。取代了IDTExtensibility2接口创建的加载项中使用的5个事件,VSTO提供了两个:Startup和Shutdown事件。这也与Excel和Word文档级解决方案中提供的Startup和Shutdown事件句柄一致。
如果使用VSTO或VSTO 2005 SE创建一个加载项,则该加载项被装载到称作应用程序域的隔离的执行空间。然后,VSTO确保当加载项失去连接或关闭应用程序时,卸载该加载项。
安全和部署
因为是使用Visual Studio来定制Office应用程序,所以可以利用.NET框架的所有安全特征。最终用户可以改变他们的Office应用程序中的安全性设置,以便所有代码运行,或者以便总是提示他们是否允许运行代码。典型地,最终用户只是单击询问是否想信任代码的对话框中的“确定”按钮。
代替让最终用户作出这项决定,VSTO使用了.NET框架的代码安全访问功能(CAS)。CAS根据条件确定是否运行代码安全,例如该代码所在的位置,是否代码被签名,以及管理者已设置了许可。这些安全需求使得部署比发布VBA解决方案更复杂,因为必须设置对发布集的安全承认许可。
支持Ribbon
Ribbon是Office 2007中的一项新特征,代替了传统的菜单和工具栏。使用VSTO 2005 SE,可以定制Ribbon,添加选项卡、组和按钮、或者隐藏Ribbon中已存在的UI元素。
增强的开发环境
因为在Visual Studio中创建VSTO解决方案,所以可访问IDE中所有可用的高级工具,例如数据源窗口。

注:本文整理自《VSTO for Mere Mortals》─—A VBA Developer’s Guide to Microsoft Office Development Using Visual Studio 2005 Tools for Office,有删节。

标签: 

为什么使用VSTO代替VBA?

VSTO为想要创建Office应用程序的开发者提供了一个专业的开发环境。有许多理由使得您可能想使用VSTO来创建解决方案,也有一些理由使得使用VBA创建解决方案可能会更好。
如果想要进行下列操作,可能会选择VBA创建Office解决方案。

  • 为Office 2003专业版之前的版本创建应用程序级的定制。
  • 为在VSTO或VSTO 2005 SE中不支持的Office应用程序创建应用程序级的定制,例如Microsoft Access。
  • 为Office 2003(标准版)创建文档级的定制。
  • 通过使用全局模板为Word和Excel创建应用程序级的定制。
  • 通过创建与想要重载的命令有相同名称的宏,重载Word、Excel和Outlook中的原始命令。
  • 对终端计算机粘附禁止配置.NET框架的有组织的需求。

如果想要进行下列操作,可能会选择使用VSTO或VSTO 2005 SE来创建Office解决方案。

  • 容易添加智能标记到解决方案中。
  • 提供仅对特定文档可用的智能标记。
  • 在文档和任务窗格中使用更丰富的控件。
  • 在离线的文档里存储数据,并在下次文档在线时容易更新。
  • 创建有一个稳定装载和卸载机制的加载项。
  • 仅使用几行代码定制任务窗格。
  • 容易定制Office 2007中的功能区。
  • 定制Outlook 2007窗体区域。
  • 访问.NET框架类库。
  • 使用更健壮的调试工具。
  • 获取对Visual Studio的整合开发环境(IDE)里的一些工具的访问,例如数据源窗口和富智能感应功能。
  • 使用专业的开发语言,例如Visual Basic 2005或Visual C#,编写可管理代码的解决方案。
  • 使用更容易的方法来维护代码和更新配置解决方案,使得代码修改在一个位置(在单个的集里面)而不是在文档的多个副本里或在全局模板中。
  • 减少宏病毒的可能,避免最终用户决定是否代码是安全的。
  • 在Office解决方案里的文档中,获取对象的数据绑定功能。
  • 获取对VSTO提供的扩展Office对象公开的事件的访问。

注:本文整理自《VSTO for Mere Mortals》─—A VBA Developer’s Guide to Microsoft Office Development Using Visual Studio 2005 Tools for Office,有删节。

标签: ,

什么是VSTO?

Visual Studio 2005 Tools for Office(VSTO)能够让您使用Visual Basic 2005或Visual C#来扩展Office 2003应用程序,例如Word、Excel、InfoPath和Outlook。代替使用Visual Basic for Application(VBA)和Office里的Visual Basic Editor(VBE),您可以使用健壮的Visual Studio开发环境来创建定制。无论您正创建简单的数据输入应用程序还是复杂的企业解决方案,VSTO都能容易地完成这些工作。
顾名思义,VSTO是Visual Studio里创建自定义Office应用程序的工具集。要在Visual Studio中获取VSTO功能,必须安装单机版Visual Studio 2005 Tools for the Microsoft Office System或者Visual Studio Team System。
要使用VSTO定制Office,则需通过在Visual Studio中创建一个新的Office项目开始。在缺省的VSTO安装中,包括五种与Office相联系的Visual Studio项目模板类型:四种项目模板为Word和Excel创建文档级的应用程序,一种项目模板以Outlook加载项的形式创建应用程序级的定制。VSTO也为InfoPath扩展包括了一种可选的模板。
一个文档级的定制意味着代码与特定的文档相联系,而不是整个应用程序。记住代码不会驻留在文档或模板中,与VBA定制不同,代码留在与该文档相联系的称作集的代码库中。在创建一个新的VSTO项目之后,可以通过主互操作程序集(PIA)来访问Office对象模型中的对象。Office PIAs允许VSTO定制与Office对象模型相交互。
VSTO也提供了可供编程的增强的Office对象。例如,可以找到Excel工作簿、工作表和单元格区域的VSTO版本,它们已扩展了在原始Excel对象模型里找不到的功能。例如,可以直接添加称作Windows Forms控件的.NET控件到Excel电子表格或Word文档中,然后直接将数据绑定到这些控件。
一个应用程序级的定制可用于整个应用程序。VSTO为Outlook 2003提供了一个加载项模板。使用Visual Studio 2005 Tools for the 2007 Microsoft Office System(VSTO 2005 SE),可以为Office 2007中的6个应用程序和Office 2003中的5个应用程序创建加载项。

注:本文整理自《VSTO for Mere Mortals》─—A VBA Developer’s Guide to Microsoft Office Development Using Visual Studio 2005 Tools for Office,有删节。
参考站点:
VSTO团队博客:http://blogs.msdn.com/vsto2/
作者的博客:http://blogs.msdn.com/kathleen/
http://blogs.msdn.com/pstubbs/

标签: 没有标签