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


Добавление полей в представление

В этом примере показано, как с помощью метода Add(String) коллекции ViewFields добавить поля в представление.

Пример

Примечание.

Приведенный ниже пример кода взят из книги Programming Applications for Microsoft Office Outlook 2007 ("Программирование приложений для Microsoft Office Outlook 2007").

Чтобы определить, какие свойства элемента Outlook будут отображаться в представлении, добавьте одно или несколько свойств в коллекцию ViewFields только для объектов CardView и TableView . Для других производных объектов View, таких как BusinessCardView, CalendarView, IconView и TimelineView, следует использовать другие методы, позволяющие определить отображаемые в представлении свойства элемента Outlook. Например, поля, отображаемые для объекта BusinessCardView, определяются макетом электронной визитной карточки (EBC), связанным с каждым элементом Outlook.

Чтобы получить коллекцию ViewFields для представления, используйте свойство ViewFields связанного объекта View (например, объекты CardView или TableView). Метод Add коллекции ViewFields обеспечивает создание объекта ViewField , представляющего свойство элемента Outlook, которое будет отображаться в представлении. Объект ViewField не только определяет отображаемые в представлении свойства элемента Outlook, но также описывает способ отображения значений соответствующего свойства. Чтобы изменить способ отображения отдельных свойств столбцов в представлении, измените значение свойства ColumnFormat объекта ViewField.

В следующем примере кода в процедуре ModifyMeetingRequestsView получается объект TableView, который определяет все представления приглашений на собрание из папки "Входящие" пользователя. После этого с помощью метода Add в объект ViewFields, соответствующий объекту TableView, добавляются поля начала и окончания. Кроме того, название поля "От кого" изменяется на "Организатор". После этого в процедуре ModifyMeetingRequestsView сохраняется измененный объект TableView.

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

using Outlook = Microsoft.Office.Interop.Outlook;
private void ModifyMeetingRequestsView()
{
    Outlook.TableView tableView = null;
    Outlook.ViewField startField = null;
    Outlook.ViewField endField = null;
    Outlook.ViewField fromField = null;
    try
    {
        tableView =
            Application.Session.GetDefaultFolder(
            Outlook.OlDefaultFolders.olFolderInbox)
            .Views["Meeting Requests"] as Outlook.TableView;
    }
    catch { }
    if (tableView != null)
    {
        try
        {
            startField = tableView.ViewFields["Start"];
        }
        catch{}
        if (startField == null)
        {
            startField = tableView.ViewFields.Add("Start");
        }
        try
        {
            endField = tableView.ViewFields["End"];
        }
        catch{}
        if (endField == null)
        {
            endField = tableView.ViewFields.Add("End");
        }
        try
        {
            fromField = tableView.ViewFields["From"];
        }
        catch{}
        if (fromField != null)
        {
            fromField.ColumnFormat.Label = "Organized By";
        }
        try
        {
            tableView.Save();
        }
        catch (Exception ex)
        {
            Debug.WriteLine(ex.Message);
        }
    }
}

См. также