次の方法で共有


ビューを作成する

この例では、Views コレクションの Add(String, OlViewType, OlViewSaveOption) メソッドを使用して Folder オブジェクトのビューを作成します。

注:

次のコード サンプルは、『Programming Applications for 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 オブジェクトを派生オブジェクトの 1 つにキャストしてから必要な変更を行うことにより、そのビューをプログラムでカスタマイズします。 派生 View オブジェクトまたは View オブジェクトの Save メソッドを使用してビューへの変更を保存します。 最後に、派生 View オブジェクトまたは View オブジェクトの Apply メソッドを使用してビューを現在の Explorer オブジェクトに適用します。 これにより、Explorer オブジェクトの ViewSwitch イベントが発生します。

次のコード例では、View オブジェクトを TableView オブジェクトにキャストすると、CreateMeetingRequestsView が “Meeting Requests” という名前の新しいビューをユーザーの受信トレイに追加します。 次に、CreateMeetingRequestsView は、 Name パラメーターは “Meeting Requests”、また ViewType パラメーターは olTableView という設定で View オブジェクトの Add メソッドを呼び出します。 TableView オブジェクトの Filter プロパティは、アイテムのメッセージ クラスに “IPM.Schedule” が含まれているアイテムが存在する場合に限りビューを表示させる DAV Searching and Locating (DASL) 文字列に設定されます。 新しいビューが保存され、適用されます。

Visual Studio を使用してこのコード例をテストする場合、Microsoft.Office.Interop.Outlook 名前空間をインポートするときに、まず Microsoft Outlook 15.0 オブジェクト ライブラリ コンポーネントへの参照を追加し、Outlook 変数を指定します。 using ステートメントは、コード例の関数の前に直接置くことはできません。パブリッククラス宣言の前に追加する必要があります。 次のコード行は、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();
}

関連項目