Изменение макета электронной визитной карточки
В этом примере показано, как изменить макет электронной визитной карточки с помощью свойства 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();
}
}
}