Exportieren (0) Drucken
Alle erweitern
Erweitern Minimieren

Gewusst wie: Hinzufügen von benutzerdefinierten Symbolleisten und Symbolleistenelementen zu Outlook

Hinweis Erforderliche Anwendungen

Das Codebeispiel in diesem Thema kann nur kompiliert werden, wenn die erforderlichen Anwendungen installiert sind.

Weitere Informationen hierzu finden Sie unter Verfügbare Features nach Produktkombination.

  • Eine der folgenden Entwicklungsumgebungen:

    VSTO 2005

    - oder -

    Visual Studio Team System

  • Microsoft Office Outlook 2003

NoteHinweis

Wenn Sie die VSTO 2005 SE-Version der Outlook 2003-Add-In-Projektvorlage verwenden, lässt sich der Code nicht kompilieren. Weitere Informationen hierzu finden Sie unter Erste Schritte beim Programmieren von Add-Ins auf Anwendungsebene.

In diesem Beispiel wird eine Symbolleiste in Microsoft Office Outlook 2003 erstellt. Die Symbolleiste, die zwei Schaltflächen enthält, wird am oberen Rand der Anwendung angezeigt. Beim Klicken auf eine Schaltfläche wird eine Meldung anzeigt, die die Schaltflächenbeschriftung enthält.

Beispiel

Office.CommandBar newToolBar;
Office.CommandBarButton firstButton;
Office.CommandBarButton secondButton;
Outlook.Explorers selectExplorers;

private void ThisApplication_Startup(object sender, System.EventArgs e)
{
    
    selectExplorers = this.Explorers;
    selectExplorers.NewExplorer +=new Outlook
        .ExplorersEvents_NewExplorerEventHandler(newExplorer_Event);
    AddToolbar();
}

private void newExplorer_Event(Outlook.Explorer new_Explorer)
{
    ((Outlook._Explorer)new_Explorer).Activate();
    newToolBar = null;
    AddToolbar();
}

private void AddToolbar()
{
    
    if (newToolBar == null)
    {
        Office.CommandBars cmdBars = 
            this.ActiveExplorer().CommandBars;
        newToolBar = cmdBars.Add("NewToolBar", 
            Office.MsoBarPosition.msoBarTop, false, true);
    }
    try
    {
        Office.CommandBarButton button_1 = 
            (Office.CommandBarButton)newToolBar.Controls
            .Add(1, missing, missing, missing, missing);
        button_1.Style = Office
            .MsoButtonStyle.msoButtonCaption;
        button_1.Caption = "Button 1";
        button_1.Tag = "Button1";
        if (this.firstButton == null)
        {
            this.firstButton = button_1;
            firstButton.Click += new Office.
                _CommandBarButtonEvents_ClickEventHandler
                (ButtonClick);
        }

        Office.CommandBarButton button_2 = (Office
            .CommandBarButton)newToolBar.Controls.Add
            (1, missing, missing, missing, missing);
        button_2.Style = Office
            .MsoButtonStyle.msoButtonCaption;
        button_2.Caption = "Button 2";
        button_2.Tag = "Button2";
        newToolBar.Visible = true;
        if (this.secondButton == null)
        {
            this.secondButton = button_2;
            secondButton.Click += new Office.
                _CommandBarButtonEvents_ClickEventHandler
                (ButtonClick);
        }
    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
}

private void ButtonClick(Office.CommandBarButton ctrl,
        ref bool cancel)
{
    MessageBox.Show("You clicked: " + ctrl.Caption);
}

Robuste Programmierung

Deklarieren Sie die Befehlsleistenvariablen auf Klassenebene. Innerhalb einer Methode deklarierte Variablen verlassen den Gültigkeitsbereich, sobald die Ausführung der Methode abgeschlossen ist. Der Garbage Collector kann den Arbeitsspeicher dann neu zuordnen.

Siehe auch

Anzeigen:
© 2015 Microsoft