IModelKeyReference2::GetContextObject-Methode (dbgmodel.h)
Die GetContextObject-Methode gibt den Kontext (dieser Zeiger) zurück, der an die GetValue- oder SetValue-Methode eines Eigenschaftsaccessors übergeben wird, wenn der betreffende Schlüssel auf einen Eigenschaftenaccessor verweist. Das hier zurückgegebene Kontextobjekt ist möglicherweise identisch mit dem ursprünglichen Objekt, das aus GetOriginalObject abgerufen wurde. Wenn sich ein Schlüssel in einem übergeordneten Modell befindet und diesem übergeordneten Modell eine Kontextanpassung zugeordnet ist, ist das ursprüngliche Objekt das instance Objekt, für das GetKeyReference oder EnumerateKeyReferences aufgerufen wurde. Das Kontextobjekt wäre das, was aus dem endgültigen Kontextanpassungsregler zwischen dem ursprünglichen Objekt und dem übergeordneten Modell mit dem Schlüssel stammt, auf den dieser Schlüsselverweis ein Handle ist. Wenn keine Kontextanpassungen vorhanden sind, sind das ursprüngliche Objekt und das Kontextobjekt identisch.
Syntax
HRESULT GetContextObject(
IModelObject **containingObject
);
Parameter
containingObject
Das Kontextobjekt, das an eine beliebige Eigenschaftsaccessormethode übergeben wird, wird hier zurückgegeben.
Rückgabewert
Diese Methode gibt HRESULT zurück, das den Erfolg oder Fehler angibt.
Hinweise
Codebeispiel
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
}
}
Anforderungen
Anforderung | Wert |
---|---|
Header | dbgmodel.h |