How to: Add Custom Toolbars and Toolbar Items to Outlook
This page is specific to:.NET Framework Version:2.03.5
Microsoft Visual Studio Tools for the Microsoft Office system (version 3.0)
How to: Add Custom Toolbars and Toolbar Items to Outlook

Applies to

The information in this topic applies only to the specified Visual Studio Tools for Office projects and versions of Microsoft Office.

Project type

  • Application-level projects

Microsoft Office version

  • Outlook 2003

  • Outlook 2007

For more information, see Features Available by Application and Project Type.

This example creates a toolbar in Microsoft Office Outlook. The toolbar, which contains two buttons, appears at the top of the application. When you click a button, the code displays a message that shows the button caption.

Example

Dim newToolBar As Office.CommandBar
Dim firstButton As Office.CommandBarButton
Dim secondButton As Office.CommandBarButton
Dim selectExplorers As Outlook.Explorers

Private Sub ThisAddIn_Startup(ByVal sender As Object, _
        ByVal e As System.EventArgs) Handles Me.Startup
    selectExplorers = Me.Application.Explorers()
    AddHandler selectExplorers.NewExplorer, AddressOf _
        Me.NewExplorer_Event
    AddToolbar()
End Sub

Private Sub NewExplorer_Event(ByVal new_Explorer _
    As Outlook.Explorer)
    new_Explorer.Activate()
    newToolBar = Nothing
    Call Me.AddToolbar()
End Sub

Private Sub AddToolbar()

    Dim button_1 As Office.CommandBarButton
    Dim button_2 As Office.CommandBarButton
    If newToolBar Is Nothing Then
        Dim cmdBars As Office.CommandBars = _
            Me.Application.ActiveExplorer().CommandBars
        newToolBar = cmdBars.Add("NewToolBar", _
            Office.MsoBarPosition.msoBarTop, False, True)
    End If
    Try
        button_1 = CType(newToolBar.Controls.Add(1),  _
            Office.CommandBarButton)
        With button_1
            .Style = Office.MsoButtonStyle.msoButtonCaption
            .Caption = "Button 1"
            .Tag = "Button1"
        End With
        If Me.firstButton Is Nothing Then
            Me.firstButton = button_1
            AddHandler firstButton.Click, AddressOf ButtonClick
        End If
        button_2 = CType(newToolBar.Controls.Add(1),  _
            Office.CommandBarButton)
        With button_2
            .Style = Office.MsoButtonStyle.msoButtonCaption
            .Caption = "Button 2"
            .Tag = "Button2"
        End With
        If Me.secondButton Is Nothing Then
            Me.secondButton = button_2
            AddHandler secondButton.Click, AddressOf ButtonClick
        End If
        newToolBar.Visible = True
    Catch ex As Exception
        MessageBox.Show(ex.Message)
    End Try
End Sub

Private Sub ButtonClick(ByVal ctrl As Office.CommandBarButton, _
        ByRef Cancel As Boolean)
    MessageBox.Show("You clicked: " + ctrl.Caption)
End Sub


Robust Programming

Declare your command bar variables at the class level. If you declare them inside a method, they will go out of scope as soon as the method finishes running and the garbage collector will be able to reallocate the memory.

See Also

Tasks

Concepts

© 2009 Microsoft Corporation. All rights reserved.   Terms of Use | Trademarks | Privacy Statement
Page view tracker
Rate the Lightweight library
x
Lightweight builds on ScriptFree (loband) by adding features you've requested: a SearchBox and default code language selection.
Do you like the SearchBox?
Do you like the tabbed code blocks?
How useful is this topic?
Tell us more.
Thanks
x
You're helping to improve MSDN Online.
Feedback
Switch View
Classic
Lightweight Beta
ScriptFree
Switch View