次の方法で共有


IMAPIForm::SetViewContext

適用対象: Outlook 2013 | Outlook 2016

フォームのビュー コンテキストを確立します。

HRESULT SetViewContext(
  LPMAPIVIEWCONTEXT pViewContext
);

パラメーター

pViewContext

[in]フォームの新しいビュー コンテキストへのポインター。

戻り値

S_OK

ビュー コンテキストが正常に設定されました。

注釈

フォーム ビューアーは IMAPIForm::SetViewContext メソッドを呼び出して、特定のフォーム ビュー コンテキストを現在の状態として確立します。 フォームには、一度に 1 つのビュー コンテキストのみを含めることができます。

実装に関するメモ

ほとんどのフォーム サーバーでは、次のアルゴリズムを使用して SetViewContext が実装されます。

  • フォームのビュー コンテキストが既に存在する場合は、pmnvs パラメーターで IMAPIViewContext::SetAdviseSink メソッドを null で呼び出してフォームの登録を取り消し、ビュー コンテキストの IUnknown::Release メソッドを呼び出して参照カウントを減らします。

  • 新しいビュー コンテキストが null でない場合は、pViewContext パラメーターを使用して IMAPIViewContext::SetAdviseSink を呼び出して、新しいビューアドバイス シンクを設定します。

  • 新しいビュー コンテキストが null でない場合は、 IMAPIViewContext::GetViewStatus メソッドを呼び出して、設定されている状態フラグを確認します。

  • 新しいビュー コンテキストが null でない場合は、それを格納し、 IUnknown::AddRef メソッドを呼び出して参照カウントをインクリメントします。

  • ビュー コンテキストに依存するすべてのユーザー インターフェイス要素を更新します。

IMAPIViewContext::GetViewStatus から返される状態フラグに応じて、SetViewContext は他のアクションも実行できます。 たとえば、VCSTATUS_NEXTフラグとVCSTATUS_PREVフラグが返された場合、 SetViewContext は新しいビュー コンテキストの [次へ ] ボタンと [前へ ] ボタンを有効にすることができます。

MFCMAPI リファレンス

MFCMAPI のサンプル コードについては、次の表を参照してください。

ファイル 関数 コメント
MAPIFormFunctions.cpp
CreateAndDisplayNewMailInFolder
MFCMAPI では 、IMAPIForm::SetViewContext メソッドを使用して、フォームが表示される前に、フォームに MFCMAPI のビュー コンテキストを設定します。

関連項目

IMAPIViewContext::GetViewStatus

IMAPIViewContext::SetAdviseSink

IMAPIForm : IUnknown

[�R��h �T���v���Ƃ��� MFCMAPI