Build a Collapsible Task Pane in Outlook – Part 1

I believe Outlook is the informational portal to business users everywhere. As the desktop interface to Microsoft Exchange, Outlook effectively serves as the short-term and long-term memory of the individual user…the brain if you will. I feel comfortable calling Outlook my brain as I have only a limited short-term memory and virtually no long-term memory.

If I don’t get an important date on the Outlook Calendar or create a task for something I need to do…forget it. It won’t happen. If I delete an email instead of filing it away within my insanely intricate and highly detailed filing system, it is like you never emailed me at all.

My point, is Outlook contains the details of my life…both professionally and personally. It is vital to what I do and how well I do it. I’m obsessed with keeping my information organized and using this order to execute on a daily basis. I’m not what you might call “anal”. I don’t naturally have orderly tendencies. This fact only serves to point out the genius that is Outlook.

Outlook Provides Developers With a Portal to Business Users

As a developer, my love for Outlook has only increased. The Outlook object model is extensive, allowing developers to build Outlook add-ins that automate the workflow and info-flow (best I can tell, I just coined that phrase…I claim it) of their users.

When Microsoft released Outlook 2007, I was immediately drawn to the integration of the ToDo Bar into the main email window (see below).

outlook-displaying-todo-taskpane

I love that I can view my upcoming appointments along with my task list in the same window that I manage email. Ever since I first saw the ToDo Bar, I wanted to build a similar type of task pane. I found that it is indeed possible but it is a complete PITA. The issue comes down to manage your custom task pane instances and tracking to which Outlook Explorer or Outlook Inspector window they belong.

You can do manage the task panes by following the guidance available here:

Walkthrough: Displaying Custom Task Panes with E-Mail Messages in Outlook

Or you can take an easier approach and download the VSTO Power Toys and make use of the Office Custom UI Manager. Either way, write code to manage the task panes. In fact, I wrote about it in my book, Pro Office 2007 Development with VSTO.

Task Panes Made Easy with Add-In-Express

Both of the example just mentioned make building & managing custom Outlook task possible. But an much easier method exists. In fact it requires virtually no code. The rub is you need to look beyond the toolset provided by Microsoft. This tool is Add-In-Express 2009 (there are two versions, one for VSTO-based solutions and another for COM-based solutions)

Add-In-Express (ADX) can handle it all, allowing you build custom CommandBars, Ribbons, Outlook Property Pages, Form Regions, and much much more. In fact, they extend the possibilities of such things like form regions, allow you to place them in other locations besides the bottom of an Outlook form (see below):

outlook-regions[1]

(Source: Add-In-Express.com)

I first discovered ADX when building a solution for one of the major banks in the USA. That project required that we integrate Outlook with a custom CRM solution involving Exchange, Oracle, and Java web services. Using ADX, I was able to quickly build out the required Outlook Task Panes.

A Preview for Part 2

That’s it for now. I decided to break this article up into a series of posts. I originally planned to cover it all in a single post but kept procrastinating because I didn’t want to write a full-fledged article in a single sitting. So I’ll stop here with a quick intro of Outlook task panes and Add-In-Express. In, Part 2 of this series, I’ll cover the design for a sample add-in that will serve as the basis for a solution I’ll create with Add-In-Express 2009.

Comments

  1. Shree says:

    Adding a task pane is pretty much simple. Check it on my website.

  2. Ty Anderson says:

    Yep, it is easy to add a task pane to Outlook. What isn’t so easy is managing your task pane instances so that they are visible in every Explorer or Inspector window (not to mention that each instance is destroyed when you close the Explorer and Inspectors). The code in your example will only display your task pane in the main Outlook Explorer …which could be fine as long as the user doesn’t open additional Explorers.

    This link provide discusses the issue: http://msdn.microsoft.com/en-us/library/bb296010.aspx.

  3. Shree says:

    I added the panel only to Explorer window intentionally.
    If you can tell me How to build a Xobni-like Task Pane in Outlook without using Add-In-Express, that would be much more helpful.

    Thank you…

  4. Eric Legault says:

    ADX is great, but Xobni isn’t using it AFAIK. They’re using Windows subclassing and grafting their own UI onto the right hand side. ADX’s Task Pane implementation for the Explorer is only for the bottom half of the To-Do Bar.

  5. Ty Anderson says:

    Agreed about Xobni. I mentioned them only because I think they are familiar to Outlook users and developers. ADX’s task pane features are much improved as you can place a task pane just about anywhere. Take a look at this screen shot…http://www.add-in-express.com/add-in-net/ . I question the usability of some of the locations but it is cool how they have made it easy. Over Thanksgiving, I’ll get around to finishing a code sample and will write Part 3. I’ll be sure to add some details about the various locations, etc.

Speak Your Mind

*