Outlook 2010中的CommandBars

| 因此,我注意到默认情况下CommandBars出现在Outlook 2010的tabAddIns中。有什么办法可以让它们显示在我的自定义功能区选项卡中? 如果这是不可能的或非常具有挑战性的,我欢迎提出更简单的方法来实现类似目标的建议。     
已邀请:
您可以使用功能区设计器创建自定义功能区选项卡,并将CommandBar项移动为功能区按钮。 可以找到一个不错的示例http://msdn.microsoft.com/zh-cn/library/bb386104.aspx     
您无法控制CommandBar按钮的位置。这是Outlook(实际上是Office的其余部分)的“兼容性支持”功能,仅用于允许较旧的加载项继续运行并使按钮可访问。如果您的目标是2010,则通常应避免使用旧的CommandBar *对象,而应使用功能区自定义。     
如果您需要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。 有关如何创建功能区xml功能区的信息,请参见http://msdn.microsoft.com/zh-cn/library/bb398246.aspx。您要获得的色带ID是
Microsoft.Outlook.Explorer
。有关扩展Outlook资源管理器功能区的更多信息,请参见http://msdn.microsoft.com/zh-cn/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-“在办公室2010-mclean-schofield.aspx上点亮”     

要回复问题请先登录注册