Share via


Ändern des Layouts einer elektronischen Visitenkarte

Dieses Beispiel zeigt, wie das Layout einer elektronischen Visitenkarte mithilfe der BusinessCardLayoutXml-Eigenschaft der ContactItem-Schnittstelle geändert wird.

Beispiel

Hinweis

Das folgende Codebeispiel ist ein Auszug aus Programming Applications für Microsoft Office Outlook 2007.

Eine elektronische Visitenkarte enthält eine Ansicht eines Kontakts, in der bestimmte Informationen aus einem Kontakt erfasst sind. Die ContactItem-Schnittstelle bietet bestimmte Member, die elektronische Visitenkarten betreffen. Diese Member sind BusinessCardLayoutXml, BusinessCardType, AddBusinessCardLogoPicture(String), ForwardAsBusinessCard(), ResetBusinessCard(), SaveBusinessCardImage(String) und ShowBusinessCardEditor().

Im folgenden Codebeispiel ändert BusinessCardLayoutExample das Layout einer elektronischen Visitenkarte, indem zuerst ein angegebenes ContactItem-Objekt abgerufen wird. In diesem Fall stellt das ContactItem-Objekt einen Kontakt dar, dessen Subject-Eigenschaft den Wert „Melissa MacBeth“ hat. Anschließend erstellt BusinessCardLayoutExample eine XML-Dokumentklasse XmlDocument und ruft dann das Layoutattribut der Klasse in einer Zeichenfolge ab, wobei der BusinessCardLayoutXML-Wert für das ContactItem-Objekt verwendet wird. Das Kartenlayout wird dann von links- zu rechtsbündig geändert.

Wenn Sie Visual Studio verwenden, um dieses Codebeispiel zu testen, müssen Sie der Microsoft Outlook 15.0-Objektbibliothekkomponente zuerst einen Verweis hinzufügen und die Outlook-Variable angeben, wenn Sie den Microsoft.Office.Interop.Outlook-Namespace importieren. Die using-Anweisung darf im Codebeispiel nicht direkt vor den Funktionen stehen, sondern muss vor der öffentlichen Class-Deklaration hinzugefügt werden. Die folgende Codezeile zeigt, wie Sie den Import und die Zuweisung in C# vornehmen.

using Outlook = Microsoft.Office.Interop.Outlook;
private void BusinessCardLayoutExample()
{
    Outlook.ContactItem contact =
        Application.Session.GetDefaultFolder(
        Outlook.OlDefaultFolders.olFolderContacts).Items.Find(
        "[Subject] = Melissa MacBeth'")
        as Outlook.ContactItem;
    if (contact != null)
    {
        XmlDocument doc = new XmlDocument();
        doc.LoadXml(contact.BusinessCardLayoutXml);
        XmlElement root = doc.DocumentElement;
        string layoutValue = root.GetAttribute("layout");
        if (layoutValue == "left")
        {
            root.SetAttribute("layout", "right");
            contact.BusinessCardLayoutXml = doc.OuterXml;
            contact.Save();
        }
    }
}

Siehe auch