iModelKeyReference::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 |