自定义 Outlook 功能区

更新:2007 年 11 月

适用对象

本主题中的信息仅适用于指定的 Visual Studio Tools for Office 项目和 Microsoft Office 版本。

项目类型

  • 应用程序级项目

Microsoft Office 版本

  • Outlook 2007

有关更多信息,请参见按应用程序和项目类型提供的功能

自定义 Microsoft Office Outlook 2007 中的功能区时,必须考虑您的自定义功能区将在该应用程序中显示的位置。Outlook 不在主应用程序用户界面 (UI) 中显示功能区,而是在用户执行特定任务(例如创建电子邮件)时打开的窗口中显示功能区。这些应用程序窗口称为“检查器”。

将功能区分配给检查器

通过指定与检查器的邮件类相对应的功能区类型,可以标识要自定义的检查器。指定功能区类型的步骤取决于您使用的是功能区设计器还是功能区 XML。

使用功能区设计器

如果使用的是“功能区(可视化设计器)”项,可在“属性”窗口中单击功能区的“RibbonType”属性,然后从值列表中选择一个或多个功能区 ID。

可以在一个项目中添加多个功能区。如果多个功能区共享一个功能区 ID,可重写项目的 ThisAddin 类的 CreateRibbonExtensibilityObject 方法,以指定在运行时显示哪个功能区。

有关更多信息,请参见功能区概述

有关每个功能区类型的更多信息,请参见技术文章自定义 Outlook 2007 中的功能区

使用功能区 XML

如果使用的是“功能区(XML)”项,可检查 Microsoft.Office.Core.IRibbonExtensibility.GetCustomUI 方法中的 ribbonID 参数的值,并返回相应的功能区。

Microsoft.Office.Core.IRibbonExtensibility.GetCustomUI 方法由 Visual Studio Tools for Office 在功能区代码文件中自动生成。ribbonID 参数是标识检查器特定类型的字符串。有关 ribbonID 参数的可能值的完整列表,请参见技术文章自定义 Outlook 2007 中的功能区

下面的代码示例演示如何只在 Microsoft.Outlook.Mail.Compose 检查器中显示自定义功能区。这是当用户创建新电子邮件时打开的检查器。要显示的功能区在 GetResourceText() 方法中指定,该方法在功能区类中生成。有关功能区类的更多信息,请参见功能区 XML

Public Function GetCustomUI(ByVal ribbonID As String) As String _
    Implements Office.IRibbonExtensibility.GetCustomUI

    Dim ribbonXML As String = String.Empty

    If ribbonID = "Microsoft.Outlook.Mail.Compose" Then
        ribbonXML = GetResourceText("Trin_RibbonOutlookBasic.Ribbon1.xml")
    End If

    Return ribbonXML
End Function
public string GetCustomUI(string ribbonID)
{
    string ribbonXML = String.Empty;

    if (ribbonID == "Microsoft.Outlook.Mail.Compose")
    {
        ribbonXML = GetResourceText("Trin_RibbonOutlookBasic.Ribbon1.xml");
    }

    return ribbonXML;
}

请参见

概念

在运行时访问功能区

功能区概述

功能区设计器

功能区 XML