共用方式為


建立檢視

此範例示範如何使用 Views 集合Add (String、OlViewType、OlViewSaveOption) 方法來建立 Folder 物件的檢視。

範例

注意事項

下列程式代碼範例是 Microsoft Office Outlook 2007 程式設計應用程式的摘錄。

您可以建立可自定義的檢視,讓您在 Outlook 總管視窗的 [檢視窗格] 內排序、分組及檢視所有不同類型的數據。 您也可以透過程序設計方式自定義內建檢視。 下表列出代表 Outlook 檢視的物件。

物件名稱

描述

BusinessCardView

數據會視為一系列電子名片影像。

CalendarView

數據是以行事曆格式檢視。

CardView

數據會在一系列的卡片中檢視。

IconView

數據會視為 Windows 資料夾圖示或總管圖示。

TableView

數據會在簡單的欄位型數據表中檢視。

TimelineView

數據會在可自定義的線性時間軸中檢視。

您可以使用 View 物件來存取所有檢視通用的屬性和方法。 不過,若要存取並非所有檢視通用的特定屬性,您必須將 View 物件轉換成您想要存取之屬性所屬的衍生 View 物件。 例如,若要存取 Cardview 物件的 HeadingsFont 屬性,請將 View 物件轉換成 Cardview 物件。 如果您想要判斷特定 View 物件代表哪種類型的 檢視 ,請使用 ViewType 屬性。

若要建立新的檢視,請使用 Folder 物件之 Views 集合的 Add 方法。 然後在建立檢視時,或在建立檢視之後的任何時間設定檢視的可見性。 若要在建立時設定檢視的可見度,請在 Add 方法的 SaveOption 參數中指定 OlViewSaveOption 常數。 若要在建立檢視之後隨時設定可見度,請為 View 物件的 SaveOption 屬性指定 OlViewSaveOption 常數。

新增檢視會引發 Views 集合的 ViewAdd 事件。 建立檢視之後,請以程序設計方式自定義檢視,方法是將 View 物件轉換成其中一個衍生物件,然後進行必要的變更。 使用衍生 View 物件或 View 物件的 Save 方法,將任何變更儲存至檢視。 最後,使用衍生 View 物件的 Apply 方法或 View 物件,將檢視套用至目前的 Explorer 物件。 這會引發 Explorer 物件的 ViewSwitch 事件。

在下列程式代碼範例中,CreateMeetingRequestsView 會將 View 物件轉換成 TableView 物件,將名為「會議邀請」的新檢視新增至使用者的 [收件]。 CreateMeetingRequestsView 接著會呼叫 Views 物件的 Add 方法,並將 Name 參數設定為 “Meeting Requests”,並將 ViewType 參數設定為 olTableViewTableView 物件的 Filter 屬性會設定為 DAV 搜尋和尋找 (DASL) 字串,只有在有包含 “IPM” 的專案時才會顯示檢視。在項目的訊息類別中排程」 。 然後會儲存並套用新的檢視。

If you use Visual Studio to test this code example, you must first add a reference to the Microsoft Outlook 15.0 Object Library component and specify the Outlook variable when you import the Microsoft.Office.Interop.Outlook namespace. The using statement must not occur directly before the functions in the code example but must be added before the public Class declaration. The following line of code shows how to do the import and assignment in C#.

using Outlook = Microsoft.Office.Interop.Outlook;
private void CreateMeetingRequestsView()
{
    const string PR_MESSAGE_CLASS =
        "http://schemas.microsoft.com/mapi/proptag/0x001A001E";
    Outlook.Views views =
        Application.Session.GetDefaultFolder(
        Outlook.OlDefaultFolders.olFolderInbox).Views;
    Outlook.TableView tableView = (Outlook.TableView)
        views.Add("Meeting Requests",
        Outlook.OlViewType.olTableView,
        Outlook.OlViewSaveOption.olViewSaveOptionThisFolderEveryone);
    tableView.Filter = "\"" + PR_MESSAGE_CLASS + "\"" +
        " like 'IPM.Schedule%'";
    tableView.Save();
    tableView.Apply();
}

另請參閱