本文转自:https://www.add-in-express.com/creating-addins-blog/2013/05/21/outlook-ui-customization-ribbons-toolbars/

The Outlook UI provides a lot of customization options, but one thing almost all Outlook add-ins share is either a ribbon tab or a toolbar or two. The Ribbon UI was introduced in Office 2007 although only the Inspector windows actually used it. The Explorer window still used the traditional menus and toolbars from previous Outlook versions.

Whichever version of Outlook you decide to develop for, Add-in Express for Office and .net provides visual designers and tools for both the Ribbon UI as well as for toolbars. Add-in Express fully supports Outlook 2013, 2010, 2007 and 2003 and works with Visual Studio 2012 – 2005 (C#, VB.NET or C++ .NET) .

 

Creating a custom Outlook ribbon

Before you can create your own Outlook ribbon, you need to add an ADXRibbonTab component to the AddinModule designer surface.

When you select the ADXRibbonTab component in Visual Studio, the visual designer will become active. When designing your Ribbon Tab, you need to follow a certain hierarchy, for example, any control you add to the Ribbon Tab, needs to be inside a Ribbon Group first.

You can add a Ribbon Group by clicking on its toolbar button inside the visual designer. The visual designer will display the control hierarchy as well as a preview of what the Ribbon Tab will look like inside Outlook.

You need to stipulate the Ribbons property in order to specify where in Outlook your ribbon tab should be displayed.

Find more about Ribbon designer.

Ribbon context-sensitivity

This property is available on all ribbon controls and it enables you to display or hide different controls based on the type of item in Outlook. Consider the following ribbon design:

The Ribbons property of the first ribbon group is set to OutlookMailRead and OutlookMailCompose. The second ribbon group’s Ribbons property is set to OutlookContact. When building and running the add-in in Outlook, you’ll only see the first ribbon group when you either edit or open an e-mail.

The second ribbon group will be visible when you have a contact inspector window open. Be careful thought, for this to work the Ribbon Tab’s Ribbons property needs to be set to OutlookMailRead,OutlookMailComposeandOutlookContact.

 

Creating a custom Outlook toolbar

Creating a custom toolbar or a commandbar for any pre-ribbon versions of Outlook 2007, 2003 and 2000 is done in a similar fashion as creating ribbons. However, Add-in Express provides two separate command bar components for pre-ribbon versions of Outlook:

  • ADXOLExplorerCommandBar
  • ADXOLInspectorCommandBar

The names of the two components are pretty self-explanatory. When you would like to add controls to an existing or create a new toolbar for the Outlook Explorer window, you would need to use the ADXOLExplorerCommandBar component.

For all other pre-ribbon Outlook Inspector windows you would need to use the ADXOLInspectorCommandBarcomponent.

When you select the ADXOLExplorerCommandBar component in Visual Studio, Add-in Express will display a visual designer for you, to visually design the toolbar.

The visual designer also comes with its own toolbar that contains all the standard commandbar controls you can add. However, I want to draw your attention to a very special control: the CommandBar Advanced Control.

This control gives you the ability to embed any non-Office control to an Outlook toolbar. This can include anything from a date picker to a tree view control!

Find more about Toolbar designer.

Advanced Toolbar control

Once you’ve added an advanced command bar control to your toolbar, you need to add the control you want to embed to the AddinModule designer surface. In this example, I’ve simply dragged a DateTimePickercontrol onto my designer surface.
Next, you’ll need to add an Outlook Control Adapter control onto the designer surface as well. You’ll find this control in your Visual Studio toolbox, under the “Toolbar Controls for Microsoft Office” group.

With the control adapter in place, select the advanced command bar control and select the name of the Date Picker control in the drop-down list next to the Control property.

With the controls and properties in place, we can build, register and run our Outlook add-in project. When you have your Inbox open in Outlook 2007 and earlier, you should see the following toolbar:

Toolbar context-sensitivity

As with the ribbon control you can also display a toolbar or certain controls on the toolbar depending on the folder name or item types (Mail, Contact, Task, Calendar etc.). If you want to show the toolbar when a certain folder is selected, specify the folder name in the FolderName property. If you need it to show for a collection of forms, add their folder names to the FolderNames property.

If, for example, you would only like to show certain components on the toolbar based on which type(s) of item is selected, select the toolbar component and either specify the Outlook item type in the OlExplorerItemTypes or OlInspectorItemTypes property depending on whether you’re using an Explorer or Inspector toolbar.

And as easy as that you can have a toolbar which only shows or hides certain controls depending on the types of items or folders that are selected.

Thank you for reading! Until next time, keep coding!

 

Outlook 2013 add-in development in Visual Studio 2012 for beginners

You may also be interested in:

[转]Creating a custom ribbon for Outlook 2013, 2010 and toolbar for Outlook 2007, 2003 – C# sample的更多相关文章

  1. Creating a Custom Page Layout in SharePoint 2013

    Creating a Custom Page Layout in SharePoint 2013 In my last article, I documented how to create a Ma ...

  2. iOS Programming Recipe 6: Creating a custom UIView using a Nib

    iOS Programming Recipe 6: Creating a custom UIView using a Nib JANUARY 7, 2013 BY MIKETT 12 COMMENTS ...

  3. 使用 InstallShield limited edition 打包部署Outlook 2013 Office add-in插件

    原文: Outlook: Deploying an Outlook 2013 add-in (using InstallShield LE) Today I had to create an inst ...

  4. Outlook 2013 电子邮件账户设置备份与恢复

    与之前版本不同,Outlook 2013需要备份以下注册表内容:HKEY_CURRENT_USER\Software\Microsoft\Office\15.0\Outlook\Profiles恢复时 ...

  5. outlook 2013撤消已经发送的邮件

    使用Outlook 2013发送邮件的时候,发送后,发现邮件写错了或者其它原因需要撤消发送邮件,这里介绍一下.   工具/原料 outlook 2013 方法/步骤   需要打开已经发送的邮件   点 ...

  6. Creating a custom analyzer in ElasticSearch Nest client

     Creating a custom analyzer in ElasticSearch Nest client Question: Im very very new to elasticsearch ...

  7. 配置Office Outlook 2013

    导航 背景——配置过程——错误(Error)——参考资料 背景 最近,折腾了一阵子邮箱客户端,包括:Foxmail.thuderbird.outlook:最后,考虑到outlook对文本的强大的支持能 ...

  8. GHOST CMS - 创建自定义主页 Creating a custom home page

    创建自定义主页 Creating a custom home page 为你的网站创建一个自定义的主页是一个让你从人群中脱颖而出的好方法,并把你自己独特的印记存放在你的网上.本教程向您展示了如何在Gh ...

  9. Outlook 2013 您的组织策略阻止我们为您完成此操作... 解决方法

    问题:点击outlook超链接,弹出“您的组织策略阻止我们为您完成此操作”的提示,无法打开链接. 环境 OS: Win10 专业版x64bit Outlook: 2013 浏览器:搜狗浏览器 解决办法 ...

随机推荐

  1. NPOI datatable导出类

    using NPOI.HSSF.UserModel; using NPOI.SS.UserModel; using System; using System.Collections.Generic; ...

  2. eclipse的使用和断点调试

    断点: 快捷键 f5: step into f6: step over 跳过,跳到下一行 f7:step return 从某个方法里跳回 跳出 drop to frame: 跳到当前方法的第一行 re ...

  3. python numpy 数组中元素大于等于0的元素

    >>> import numpy as np >>> a = np.random.randint(-5, 5, (5, 5)) >>> a arr ...

  4. Android Studio无法连接真机的问题?

    我不说,你可能又浪费半天时间,最后的结果,你可能还是没能解决!!! 现在,一般安卓手机为了安装软件方便,一般都安装了豌豆荚,但是,就是这个豌豆荚占用了Android Studio的ADB端口,导致An ...

  5. 1.python的一些规范

    Python的一些规范 1.标识符 定义:允许作为名字的有效字符串集合 名字必须有实际意义,可读性好 首字母必须是字母或下划线(_) 剩下的字符可以是字母和数字或者下划线 大小写敏感 两种风格:con ...

  6. tomcat JNDI Resource 配置

    最近公司的项目慢慢开始向Maven项目迁移, 部分配置文件公共组也帮我们做了些改动,其中在spring的applicationContext.xml中看到了数据连接bean存在两个,一个是jndi 一 ...

  7. C语言的组成 以及预编译

    这么多年过去了,回头再来学习一下C语言,发现很多不一样的感觉 #include <stdio.h> int main(int argc, const char * argv[]) { pr ...

  8. 从码农升为PM(节约成本)

    做为一个码农的潜规则,用户怎么要求怎么写,不论过程只论是否符合要求以及减少bug的存在,虽然bug随时会出现,这就是码农,一直以来都说码农分很多种但个人认为就是一种,原因是码农不懂的换位思考,不懂的在 ...

  9. Andrew Ng机器学习第五章——多变量线性回归

    一.多变量线性回归的技巧之一——特征缩放 1.为什么要使用特征缩放? 特征缩放用来确保特征值在相似的范围之内. 设想这样一种情况(房价预测),两个特征值分别是房子的大小和卧室的数量.每个特征值所处的范 ...

  10. 【xsy1162】鬼计之夜 最短路+二进制拆分

    套路题(然而我没看题解做不出来) 题目大意:给你一个$n$个点,$m$条有向边的图.图中有$k$个标记点,求距离最近的标记点间距离. 数据范围:$n,m,k≤10^5$. 设$p_i表$示第$i$个标 ...