CDataPathProperty 类
实现可异步加载的 OLE 控件属性。
语法
class CDataPathProperty : public CAsyncMonikerFile
成员
公共构造函数
名称 | 描述 |
---|---|
CDataPathProperty::CDataPathProperty | 构造 CDataPathProperty 对象。 |
公共方法
名称 | 描述 |
---|---|
CDataPathProperty::GetControl | 检索与 CDataPathProperty 对象关联的异步 OLE 控件。 |
CDataPathProperty::GetPath | 检索属性的路径名称。 |
CDataPathProperty::Open | 为关联的 ActiveX (OLE) 控件启动异步属性加载。 |
CDataPathProperty::ResetData | 调用 CAsyncMonikerFile::OnDataAvailable 以通知容器控件属性已更改。 |
CDataPathProperty::SetControl | 设置与属性关联的异步 ActiveX (OLE) 控件。 |
CDataPathProperty::SetPath | 设置属性的路径名称。 |
备注
可以在同步启动之后加载异步属性。
类 CDataPathProperty
是从 CAysncMonikerFile
派生的。 要在 OLE 控件中实现异步属性,请从 CDataPathProperty
派生一个类,然后重写 OnDataAvailable。
有关如何在 Internet 应用程序中使用异步名字对象和 ActiveX 控件的详细信息,请参阅以下文章:
继承层次结构
CDataPathProperty
要求
标头:afxctl.h
CDataPathProperty::CDataPathProperty
构造 CDataPathProperty
对象。
CDataPathProperty(COleControl* pControl = NULL);
CDataPathProperty(LPCTSTR lpszPath, COleControl* pControl = NULL);
参数
pControl
指向与此 CDataPathProperty
对象关联的 OLE 控件对象的指针。
lpszPath
用于创建引用属性实际绝对位置的异步名字对象的路径(可以是绝对路径或相对路径)。 CDataPathProperty
使用 URL,而不是文件名。 如果需要文件的 CDataPathProperty
对象,请在路径前附加 file://
。
备注
由 pControl 指向的 COleControl
对象由 Open
使用并由派生类检索。 如果 pControl 为 NULL,则状态为 Open
的所用控件应设置为 SetControl
。 如果 lpszPath 为 NULL,则可以通过 Open
传入路径,也可以使用 SetPath
进行设置。
CDataPathProperty::GetControl
调用此成员函数以检索与 CDataPathProperty
对象关联的 COleControl
对象。
COleControl* GetControl();
返回值
返回指向与 CDataPathProperty
对象关联的 OLE 控件的指针。 如果未关联控件,则为 NULL。
CDataPathProperty::GetPath
调用此成员函数以检索路径,在构造 CDataPathProperty
对象时设置,或在 Open
中指定,或在对 SetPath
成员函数的上一次调用中指定。
CString GetPath() const;
返回值
返回属性本身的路径名。 如果未指定路径,可以为空。
CDataPathProperty::Open
调用此成员函数以启动对关联控件异步属性的加载。
virtual BOOL Open(
COleControl* pControl,
CFileException* pError = NULL);
virtual BOOL Open(
LPCTSTR lpszPath,
COleControl* pControl,
CFileException* pError = NULL);
virtual BOOL Open(
LPCTSTR lpszPath,
CFileException* pError = NULL);
virtual BOOL Open(CFileException* pError = NULL);
参数
pControl
指向与此 CDataPathProperty
对象关联的 OLE 控件对象的指针。
pError
指向文件异常的指针。 发生错误时,将其设置为原因。
lpszPath
用于创建引用属性实际绝对位置的异步名字对象的路径(可以是绝对路径或相对路径)。 CDataPathProperty
使用 URL,而不是文件名。 如果需要文件的 CDataPathProperty
对象,请在路径前附加 file://
。
返回值
如果成功,则不为 0;否则为 0。
注解
该函数尝试从控件获取 IBindHost
接口。
在不带路径调用 Open
之前,必须设置属性路径的值。 此操作可在构造对象时或通过调用 SetPath
成员函数来完成。
在没有控件调用 Open
之前,ActiveX 控件(以前称为 OLE 控件)可以与对象相关联。 此操作可在构造对象时或通过调用 SetControl
成员函数来完成。
CAsyncMonikerFile::Open 的所有重载也可从 CDataPathProperty
中获取。
CDataPathProperty::ResetData
调用此函数可获得 CAsyncMonikerFile::OnDataAvailable
,以通知容器控件属性已更改,并且异步加载的所有信息不再有用。
virtual void ResetData();
注解
应重新打开。 派生类可以针对不同的默认值重写此函数。
CDataPathProperty::SetControl
调用此成员函数将异步 OLE 控件与 CDataPathProperty
对象相关联。
void SetControl(COleControl* pControl);
参数
pControl
指向要与属性关联的异步 OLE 控件的指针。
CDataPathProperty::SetPath
调用此成员函数以设置属性的路径名称。
void SetPath(LPCTSTR lpszPath);
参数
lpszPath
异步加载的属性路径(可以是绝对路径或相对路径)。 CDataPathProperty
使用 URL,而不是文件名。 如果需要文件的 CDataPathProperty
对象,请在路径前附加 file://
。