项目解决方案

Visual Studio 2013 提供了可用于为 Microsoft 办公室 Project 创建 VSTO 外接程序的项目模板。 VSTO 外接程序可用于自动运行项目、扩展项目功能或自定义项目用户界面 (UI)。

有关 VSTO 外接程序的详细信息,请参阅 VSTO 外接程序的 VSTO 外接程序和体系结构入门。如果你不熟悉使用 Microsoft 办公室 进行编程,请参阅“入门”(Visual Studio 中的办公室开发)。

适用于: 本主题中的信息适用于 Project 的 VSTO 外接程序项目。 有关详细信息,请参阅办公室应用程序和项目类型提供的功能。

注意

有兴趣开发跨多个平台扩展办公室体验的解决方案? 查看新的办公室外接程序模型。 与 VSTO 外接程序和解决方案相比,办公室外接程序的占用空间较小,可以使用几乎任何 Web 编程技术(如 HTML5、JavaScript、CSS3 和 XML)生成它们。

使用项目对象模型自动执行项目

项目对象模型公开了许多可用于实现项目自动化的类型。 可使用这些类型编写代码来完成常规任务,例如以编程方式创建和修改项目中的任务。

若要从 VSTO 外接程序访问 Project 对象模型,请使用 Application 项目中类的 ThisAddIn 字段。 该 Application 字段返回一个 Microsoft.Office.Interop.MsProject.Application 对象,该对象表示项目的当前实例。 有关详细信息,请参阅 程序 VSTO 外接程序

调入项目对象模型时,将使用项目的主互操作程序集中提供的类型。 该主互操作程序集将作为 VSTO 外接程序中的托管代码和项目中的 COM 对象模型之间的桥梁。 项目主互操作程序集中的所有类型都在 Microsoft.Office.Interop.MSProject 命名空间中定义。 有关主互操作程序集的详细信息,请参阅办公室解决方案开发概述(VSTO)办公室主互操作程序集

使用项目对象模型文档

有关项目对象模型的完整信息,可以参考项目 VBA 对象模型引用。 VBA 对象模型引用在项目对象模型被公开到 Visual Basic for Applications (VBA) 代码时记录该对象模型。 有关详细信息,请参阅 Project 对象模型参考

VBA 对象模型引用中的所有对象和成员都对应于项目主互操作程序集 (PIA) 中的类型和成员。 例如,VBA 对象模型引用中的 Calendar 对象对应于 Microsoft.Office.Interop.MSProject.Calendar Project PIA 中的类型。 尽管 VBA 对象模型引用为大多数属性、方法和事件提供了代码示例,但如果要在使用 Visual Studio 创建的 Project VSTO 外接程序项目中使用这些代码,则必须将此引用中的 VBA 代码转换为 Visual Basic 或 Visual C# 。

注意

此时,没有任何项目主互操作程序集的参考文档。

项目主互操作程序集中的基础结构类型

编写使用项目 PIA 的代码时,您可能会注意到许多类型在 VBA 参考中都未涉及。 这些附加类型可以帮助将项目的基于 COM 的对象模型中的对象转换为托管代码,而不是在代码中直接使用。

有关详细信息,请参阅办公室主互操作程序集中的类和接口概述。

自定义项目的用户界面

可以通过下列方式来自定义项目 UI:

任务 更多信息
向项目的功能区添加自定义选项卡 功能区概述

有关自定义 Project 和其他Microsoft 办公室应用程序的 UI 的详细信息,请参阅办公室 UI 自定义