Поделиться через


Изменение макета электронной визитной карточки

В этом примере показано, как изменить макет электронной визитной карточки с помощью свойства BusinessCardLayoutXml интерфейса ContactItem.

Пример

Примечание.

Приведенный ниже пример кода представляет собой фрагмент из книги Программирование приложений для Microsoft Office Outlook 2007.

Электронная визитная карточка — это представление контакта, содержащее конкретную информацию о нем. Интерфейс ContactItem предоставляет определенные элементы, относящиеся к электронным визитным карточкам. Ими являются BusinessCardLayoutXml, BusinessCardType, AddBusinessCardLogoPicture(String), ForwardAsBusinessCard(), ResetBusinessCard(), SaveBusinessCardImage(String) и ShowBusinessCardEditor().

В представленном ниже примере кода BusinessCardLayoutExample изменяет макет электронной визитной карточки путем первоначального получения заданного объекта ContactItem. В этом случае объект ContactItem является контактом со значением свойства Subject равным "Melissa MacBeth". Затем BusinessCardLayoutExample создает класс XML-документа XmlDocument и получает атрибут структуры этого класса в строке с помощью значения BusinessCardLayoutXML для объекта ContactItem. После этого макет карточки изменяется с выравнивания по левому краю на выравнивание по правому.

Если вы используете Visual Studio для тестирования этого примера кода, сначала добавьте ссылку на компонент Microsoft Outlook 15.0 Object Library и задайте переменную Outlook при импорте пространства имен Microsoft.Office.Interop.Outlook. Инструкция using не должна находиться непосредственно перед функциями в примере кода, но ее нужно добавить перед объявлением общедоступного класса. В следующей строке кода показано, как выполнить импорт и назначение в C#.

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();
        }
    }
}

См. также