IModelKeyReference2::GetContextObject メソッド (dbgmodel.h)

GetContextObject メソッドは、対象のキーがプロパティ アクセサーを参照している場合に、プロパティ アクセサーの GetValue メソッドまたは SetValue メソッドに渡されるコンテキスト (このポインター) を返します。 ここで返されるコンテキスト オブジェクトは、GetOriginalObject からフェッチされた元のオブジェクトと同じである場合と異なることがあります。 キーが親モデル上にあり、その親モデルに関連付けられたコンテキスト アジャスターがある場合、元のオブジェクトは、GetKeyReference または EnumerateKeyReferences が呼び出されたインスタンス オブジェクトです。 コンテキスト オブジェクトは、元のオブジェクトと、このキー参照がハンドルであるキーを含む親モデルとの間の最終的なコンテキストアジャスタから出てくるものになります。 コンテキストアジャスターがない場合、元のオブジェクトとコンテキストオブジェクトは同じです。

構文

HRESULT GetContextObject(
  IModelObject **containingObject
);

パラメーター

containingObject

任意のプロパティ アクセサー メソッドに渡されるコンテキスト オブジェクトがここで返されます。

戻り値

このメソッドは、成功または失敗を示す HRESULT を返します。

注釈

コード サンプル

ComPtr<IModelObject> spObject; /* get an object */

ComPtr<IModelKeyReference> spKeyRef;
if (SUCCEEDED(spObject->GetKeyReference(L"Id", &spKeyRef, nullptr)))
{
    ComPtr<IModelObject> spContextObject;
    if (SUCCEEDED(spKeyRef->GetContextObject(&spContextObject)))
    {
        // spObject and spContextObject should be the same.
        // This is *NOT* true if there was an intervening call to OverrideContextObject 
    }
}

要件

要件
Header dbgmodel.h

こちらもご覧ください

IModelKeyReference2 インターフェイス