Office UI 自定义
可以通过使用 Visual Studio 中的 Office 开发人员工具以编程方式自定义 Microsoft Office 应用程序的用户界面 (UI)。 一些 UI 功能(例如功能区和自定义任务窗格)在 Visual Studio 中具有可用于自定义这些功能的相应 API 和设计器。 其他 UI 功能(例如 Backstage 视图和快捷菜单)在 Visual Studio 中没有 API 或设计器。 但是,仍然可以使用由 Office 应用程序提供的 API 和 XML 扩展性选项来自定义这些功能。
UI 功能比较
下表比较了可以在 Microsoft Office 项目中自定义的主要 UI 功能。
功能 |
支持的项目类型 |
支持的 Microsoft Office 应用程序 |
---|---|---|
操作窗格 |
文档级自定义项 |
Excel 2007 和 Excel 2010 Word 2007 和 Word 2010 |
自定义任务窗格 |
应用程序级外接程序 |
Excel 2007 和 Excel 2010 InfoPath 2007 和 InfoPath 2010 Outlook 2007 和 Outlook 2010 PowerPoint 2007 和 PowerPoint 2010 Word 2007 和 Word 2010 |
自定义功能区 UI |
文档级自定义项 应用程序级外接程序 |
Excel 2007 和 Excel 2010 InfoPath 2010 Outlook 2007 和 Outlook 2010 PowerPoint 2007 和 PowerPoint 2010 Project 2010 Word 2007 和 Word 2010 Visio 2010 |
Backstage 视图 |
文档级自定义项 应用程序级外接程序 |
Excel 2010 InfoPath 2010 Outlook 2010 PowerPoint 2010 Project 2010 Word 2010 Visio 2010 |
Outlook 窗体区域 |
应用程序级外接程序 |
Outlook 2007 和 Outlook 2010 |
文档中的控件 |
文档级自定义项 应用程序级外接程序 |
Excel 2007 和 Excel 2010 Word 2007 和 Word 2010 |
智能标记 |
文档级自定义项 应用程序级外接程序 |
Excel 2007 Word 2007 |
快捷菜单 |
文档级自定义项 应用程序级外接程序 |
Excel 2007 和 Excel 2010 InfoPath 2007 和 InfoPath 2010 Outlook 2007 和 Outlook 2010 PowerPoint 2007 和 PowerPoint 2010 Project 2007 和 Project 2010 Word 2007 和 Word 2010 Visio 2007 和 Visio 2010 |
菜单和工具栏 |
应用程序级外接程序 |
InfoPath 2007 Outlook 2007(资源管理器窗口) Project 2007 Visio 2007 |
操作窗格和自定义任务窗格
任务窗格是通常停靠在 Microsoft Office 应用程序中某一窗口一侧的用户界面面板。 几乎所有 Microsoft Office 应用程序都包含内置任务窗格。 Word 中的“帮助”任务窗格便是任务窗格的一个示例。
Visual Studio 中的 Office 开发工具提供两种不同的自定义任务窗格的方法:
向文档级自定义项中添加操作窗格。 默认情况下,操作窗格显示在应用程序的右侧(文档的右侧)。 不过,操作窗格也可以显示在文档的左侧、顶部或底部。
可以将自定义任务窗格添加到应用程序级外接程序中。 用户可以将自定义任务窗格停靠在应用程序窗口的不同侧,或者可以将自定义任务窗格拖动到窗口中的任何位置。
操作窗格和自定义任务窗格通过承载各种控件来帮助用户完成诸如数据输入之类的任务,从而提供相应的功能。 与工具栏相比,操作窗格和自定义任务窗格提供更大的区域,可包括更多的文本和控件。
有关操作窗格的更多信息,请参见 操作窗格概述。 有关自定义任务窗格的更多信息,请参见 自定义任务窗格概述。
自定义功能区 UI
您可以自定义功能区 UI,以公开添加到 Office 中的应用程序中的功能。 可以通过功能区以控件形式组织相关的命令,使它们易于查找。 您可以创建自己的功能区选项卡和组,以允许用户访问您在解决方案中提供的功能。 在早期版本的 Microsoft Office system 中使用菜单和工具栏访问的大部分功能现在都可以使用功能区访问。
有关更多信息,请参见功能区概述。
Backstage 视图
在 Microsoft Office 2010 应用程序中,单击**“文件”**选项卡可打开 Backstage 视图。 Backstage 视图提供了一个将文件级任务与操作组合在一起的 UI,可替换 2007 Microsoft Office system 中可通过 Microsoft Office 按钮使用的类似功能。 可使用 XML 对 Backstage 视图进行全面扩展。
Visual Studio 未提供用于自定义 Backstage 视图的设计器或 API。 但是,如果将**“功能区 (XML)”项添加到 Office 项目,则可将 XML 添加到功能区 XML 文件来自定义 Backstage 视图。 有关“功能区 (XML)”**项的更多信息,请参见功能区 XML。
有关自定义 Backstage 视图的更多信息,请参见 Introduction to the Office 2010 Backstage View for Developers(Office 2010 Backstage 视图简介 - 适用于开发人员)和 Customizing the Office 2010 Backstage View for Developers(自定义 Office 2010 Backstage 视图 - 适用于开发人员)。
Outlook 窗体区域
使用窗体区域可以向标准的 Microsoft Office Outlook 窗体中添加自定义功能。 您可以创建用其他字段或控件对现有窗体进行扩展的窗体区域。 如果使用 Visual Studio 中的 Office 开发工具创建新窗体区域,则只能使用窗体区域上的 Windows 窗体控件。 如果要导入在 Outlook 中设计的窗体区域,则只能使用本机 Outlook 控件。
可以创建占据 Outlook UI 不同区域的窗体区域。 例如,相邻的窗体区域显示在窗体第一页的底部,每个相邻的窗体区域都是可折叠的。 您还可以添加一个单独的窗体区域,该窗体区域作为一个完整的窗体页显示,并且可以显示在任何现有的标准窗体或自定义窗体上。
有关更多信息,请参见创建 Outlook 窗体区域。
文档中的控件
可以向 Word 文档和 Excel 工作表中添加各种控件。 例如,您可能希望向文档中添加日期选择器控件,以便用户可以按标准格式输入日期,或者在工作表上放置一个用来向数据库发送数据的按钮。
当您为 Excel 或 Word 开发文档级项目时,可以使用 Visual Studio 设计器在设计时向项目中的文档或工作簿添加控件,或者以编程方式在运行时添加控件。 在为 Excel 或 Word 开发应用程序级项目时,可以通过编程方式在运行时向任何打开的文档或工作簿中添加控件。
有关更多信息,请参见宿主项和宿主控件概述和 Office 文档上的 Windows 窗体控件概述。
智能标记
智能标记是一些附带有类型信息的文本字符串;当文档中出现符合条件的文本字符串时,该字符串就会被识别出来,然后用户可以执行适用于该字符串类型的操作。 例如,您可以创建用于识别股票代码的智能标记。 当用户键入包含四个字母的大写字符串时,就会显示一个与股票有关的操作(如在 Internet 上查找股票价格)的列表。
可以使用 Visual Studio 中的 Office 开发工具向文档级自定义项的 Word 文档和 Excel 工作簿中添加智能标记。 也可以使用应用程序级项目向任何打开的文档或工作簿中添加智能标记。
有关更多信息,请参见智能标记概述。
快捷菜单
当您在文档或应用程序窗口中右击时,即会出现快捷菜单。 可以将快捷菜单设置为发生某个事件之后出现,例如当用户右击文档、工作簿或宿主控件时。 您可以将许多不同的菜单命令或控件添加到快捷菜单。
有两种创建快捷菜单的方法:
通过使用命令栏对象模型。 此方法可用于 Microsoft Office 2010 和 2007 Microsoft Office system 中。 有关更多信息,请参见如何:向 Word 中的快捷菜单添加命令、如何:向 Excel 中的快捷菜单添加命令和演练:创建书签的快捷菜单。
通过使用 XML。 此方法只在 Microsoft Office 2010 中可用。 如果将**“功能区 (XML)”**项添加到 Office 项目,则可将 XML 添加到功能区 XML 文件来创建快捷菜单。 有关使用 XML 创建快捷菜单的更多信息,请参见 Customizing Context Menus in Office 2010(自定义 Office 2010 中的上下文菜单)。
工具栏和菜单
2007 Microsoft Office system 中的某些应用程序为主应用程序 UI 使用工具栏和菜单。
您可以向 Office 解决方案中添加工具栏,以使用户可以轻松地访问工具和其他功能。 可以通过添加或移除按钮和其他控件来自定义工具栏。 还可以自定义工具栏的位置和停靠属性。 有关更多信息,请参见如何:创建 Office 工具栏、如何:向工具栏和菜单项添加自定义图标和如何:维护 Outlook 会话之间自定义工具栏的位置信息。
您可以向 Office 的菜单栏中添加菜单,还可以为该菜单创建自定义的标题。 您可以向新菜单或现有菜单中添加菜单命令,也可以移除命令。 有关更多信息,请参见如何:向 Excel 中的快捷菜单添加命令和如何:向 Outlook 添加自定义菜单和菜单项。