【问题标题】:CommandBars in outlook 2010Outlook 2010 中的命令栏
【发布时间】:2011-08-22 21:27:03
【问题描述】:

所以我注意到 CommandBars 默认出现在 Outlook 2010 的 tabAddIns 中。有什么方法可以让它们出现在我的自定义功能区选项卡中?

如果这是不可能的或非常具有挑战性的,我欢迎提出更简单的方法来实现类似的目标。

【问题讨论】:

    标签: c# visual-studio-2010 vsto outlook-2010 commandbar


    【解决方案1】:

    您可以使用功能区设计器创建自定义功能区选项卡,并将您的命令栏项目移动为功能区按钮。

    可以找到一个不错的例子http://msdn.microsoft.com/en-us/library/bb386104.aspx

    【讨论】:

      【解决方案2】:

      您无法控制 CommandBar 按钮的位置。这是 Outlook(实际上是 Office 的其余部分)的“兼容性支持”功能,仅用于允许较旧的插件继续运行并使其成为可访问的按钮。如果您的目标是 2010 年,您通常应该避免使用旧的 CommandBar* 对象,而是使用功能区自定义。

      【讨论】:

        【解决方案3】:

        如果您需要 Office 2007/2003 支持(我认为这是您拥有命令栏​​的原因),那么您最好检查正在运行的 office interop dll 的 MajorVersion。

        然后你可以这样做:

        string majorVersionString = Globals.ThisAddIn.Application.Version.Split(new char[] { '.' })[0];
        int majorVersion = Convert.ToInt32(majorVersionString);
        if (majorVersion < 14)
        {
            //Register CommandBar
        }
        

        然后还创建一个以 OutlookExplorer 功能区为目标的功能区。因为只有 Office 2010 会请求该功能区类型,所以它只适用于 Office 2010。

        请参阅http://msdn.microsoft.com/en-us/library/bb398246.aspx 了解如何创建功能区 xml 功能区。您要使用的功能区 ID 是 Microsoft.Outlook.Explorer。有关扩展 Outlook 资源管理器功能区的更多信息,请访问 http://msdn.microsoft.com/en-us/library/ee692172.aspx#OfficeOLExtendingUI_Explorer

        编辑: 有关多目标多个 Office 版本的更多信息,请访问http://blogs.msdn.com/b/vsto/archive/2010/06/04/creating-an-add-in-for-office-2007-and-office-2010-that-quot-lights-up-quot-on-office-2010-mclean-schofield.aspx

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2018-06-28
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-08-19
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多