Freigeben über


Zugreifen auf einen Formularbereich zur Laufzeit

Betrifft

Die Informationen in diesem Thema gelten nur für die angegebenen Projekttypen und Versionen von Microsoft Office. Weitere Informationen finden Sie unter Verfügbare Funktionen nach Office-Anwendung und Projekttyp.

Projekttyp

  • Projekte auf Anwendungsebene

Microsoft Office-Version

  • Outlook 2007

  • Outlook 2010

Verwenden Sie die Globals-Klasse, um von einer beliebigen Stelle im Outlook-Projekt auf Formularbereiche zuzugreifen. Weitere Informationen zur Globals-Klasse finden Sie unter Globaler Zugriff auf Objekte in Office-Projekten.

Betrifft: Die Informationen in diesem Thema betreffen Projekte auf Anwendungsebene für Outlook 2007 und Outlook 2010. Weitere Informationen finden Sie unter Verfügbare Funktionen nach Office-Anwendung und Projekttyp.

Zugreifen auf Formularbereiche, die in einem bestimmten Fenster von Outlook-Inspektor angezeigt werden

Wenn Sie auf alle in einem bestimmten Outlook-Inspektor angezeigten Formularbereiche zugreifen möchten, rufen Sie die FormRegions-Eigenschaft der Globals-Klasse auf, und übergeben Sie ein Inspector-Objekt, das den Inspektor darstellt.

Im folgenden Beispiel wird die Auflistung von Formularbereichen abgerufen, die im derzeit im Fokus stehenden Inspektor angezeigt werden. In diesem Beispiel wird anschließend auf einen Formularbereich in der Auflistung mit der Bezeichnung formRegion1 zugegriffen, und der Text, der in einem Textfeld angezeigt wird, wird auf Hello World festgelegt.

    Private Sub Access_Form_Regions_ByInspector()
        Dim formRegions As WindowFormRegionCollection = Globals.FormRegions _
            (Globals.ThisAddIn.Application.ActiveInspector())
        formRegions.FormRegion1.textBox1.Text = "Hello World"
    End Sub

private void Access_Form_Regions_ByInspector()
{
    WindowFormRegionCollection formRegions = 
        Globals.FormRegions
            [Globals.ThisAddIn.Application.ActiveInspector()];
    formRegions.FormRegion1.textBox1.Text = "Hello World";
}

Zugreifen auf Formularbereiche, die in einem bestimmten Fenster von Outlook-Explorer angezeigt werden

Wenn Sie auf alle in einem bestimmten Outlook-Explorer angezeigten Formularbereiche zugreifen möchten, rufen Sie die FormRegions-Eigenschaft der Globals-Klasse auf, und übergeben Sie ein Explorer-Objekt, das den Explorer darstellt.

Im folgenden Beispiel wird die Auflistung von Formularbereichen abgerufen, die im derzeit im Fokus stehenden Explorer angezeigt werden. In diesem Beispiel wird anschließend auf einen Formularbereich in der Auflistung mit der Bezeichnung formRegion1 zugegriffen, und der Text, der in einem Textfeld angezeigt wird, wird auf Hello World festgelegt.

Private Sub Access_Form_Regions_ByExplorer()
    Dim formRegions As WindowFormRegionCollection = Globals.FormRegions _
        (Globals.ThisAddIn.Application.ActiveExplorer())
    formRegions.FormRegion1.textBox1.Text = "Hello World"
End Sub
private void Access_Form_Regions_ByExplorer()
{
    WindowFormRegionCollection formRegions =
        Globals.FormRegions
            [Globals.ThisAddIn.Application.ActiveExplorer()];
    formRegions.FormRegion1.textBox1.Text = "Hello World";
}

Zugreifen auf alle Formularbereiche

Wenn Sie auf alle Formularbereiche zugreifen möchten, die in allen Explorern und Inspektoren angezeigt werden, rufen Sie die FormRegions-Eigenschaft der Globals-Klasse auf.

Im folgenden Beispiel wird die Auflistung von Formularbereichen abgerufen, die in allen Explorern und Inspektoren angezeigt werden. In diesem Beispiel wird anschließend auf einen Formularbereich mit der Bezeichnung formRegion1 zugegriffen, und der Text, der in einem Textfeld angezeigt wird, wird auf Hello World festgelegt.

Friend Sub Access_All_Form_Regions()
    Dim formRegion As Microsoft.Office.Tools.Outlook.IFormRegion
    For Each formRegion In Globals.FormRegions
        If TypeOf formRegion Is FormRegion1 Then
            Dim formRegion1 As FormRegion1 = _
                CType(formRegion, FormRegion1)
            formRegion1.textBox1.Text = "Hello World"
        End If
    Next formRegion
End Sub
internal void Access_All_Form_Regions()
{
    foreach (Microsoft.Office.Tools.Outlook.IFormRegion formRegion 
        in Globals.FormRegions)
    {
        if (formRegion is FormRegion1)
        {
            FormRegion1 formRegion1 = (FormRegion1)formRegion;
            formRegion1.textBox1.Text = "Hello World";
        }
    }

}

Zugreifen auf Steuerelemente für einen Formularbereich

Soll mithilfe der Globals-Klasse auf Steuerelemente für einen Formularbereich zugegriffen werden, müssen die Steuerelemente für Code verfügbar gemacht werden, der außerhalb der Formularbereich-Codedatei liegt.

Im Formularbereich-Designer entworfene Formularbereiche

Ändern Sie für C# den Modifizierer für jedes Steuerelement, auf das Sie zugreifen möchten. Wählen Sie dazu jedes Steuerelement im Formularbereich-Designer aus, und ändern Sie die Modifier-Eigenschaft im Fenster Eigenschaften in "Internal" oder "public". Wird beispielsweise die Modifier-Eigenschaft von textBox1 in "Internal" geändert, können Sie auf textBox1 durch Eingabe von Globals.FormRegions.FormRegion1.textBox1 zugreifen.

Für Visual Basic muss der Modifizierer nicht geändert werden.

Importierte Formularbereiche

Beim Importieren eines in Outlook entworfenen Formularbereichs wird der Zugriffsmodifizierer jedes Steuerelements für den Formularbereich privat. Da der Formularbereich-Designer nicht zum Ändern eines importierten Formularbereichs verwendet werden kann, besteht keine Möglichkeit, den Modifizierer eines Steuerelements im Fenster Eigenschaften zu ändern.

Wenn von außerhalb der Formularbereich-Codedatei Zugriff auf ein Steuerelement ermöglicht werden soll, muss in der Formularbereich-Codedatei eine Eigenschaft erstellt werden, um dieses Steuerelement zurückzugeben.

Weitere Informationen zum Erstellen von Eigenschaften in C# finden Sie unter Gewusst wie: Deklarieren und Verwenden von Lese-/Schreibeigenschaften (C#-Programmierhandbuch).

Weitere Informationen zum Erstellen von Eigenschaften in Visual Basic finden Sie unter How to: Add Fields and Properties to a Class.

Siehe auch

Aufgaben

Exemplarische Vorgehensweise: Entwerfen eines Outlook-Formularbereichs

Gewusst wie: Hinzufügen eines Bereichs zu einem Outlook-Add-In-Projekt

Exemplarische Vorgehensweise: Importieren eines in Outlook entworfenen Formularbereichs

Gewusst wie: Verhindern der Anzeige eines Formularbereichs in Outlook

Gewusst wie: Zugreifen auf das Outlook-Element, das den Formularbereich anzeigt.

Konzepte

Richtlinien zum Erstellen von Outlook-Formularbereichen

Benutzerdefinierte Aktionen in Outlook-Formularbereichen

Zuordnen eines Formularbereichs zu einer Outlook-Nachrichtenklasse

Zugreifen auf die Multifunktionsleiste zur Laufzeit

Weitere Ressourcen

Erstellen von Outlook-Formularbereichen