Model for Hosting RDO Data Controls in a Container
A container hosts an RDO data-source control as follows
- The container obtains an IVBDSC interface from the data-source control. If it cannot find IVBDSC, then it is not a data-source control.
- The container obtains the ICursor interfaces from the data-source control. These interfaces supply a Cursor object that can be manipulated by a client.
- The container hooks up to the data-source control's INotifyDBEvents interface. This interface allows the container to receive notifications from the data-source control. The container should support the INotifyDBEventsSink interface in order to do this.
A container hosts an RDO data-bound control as follows
- The control supports the IBoundObject interface and the container supports the IBoundObjectSite interface. The control obtains the container's IBoundObjectSite interface, and the container obtains the IBoundObject interface from the control.
- The control supports the IPropNotifySink interface, and hooks up with the container. This allows the container to receive notifications from the control.
- If the control supports INotifyDBEventsSink, it can receive notifications from an RDO data-source control after connecting with the data-source control's INotifyDBEvents interface.
- The control then can receive cursor objects from the data-source control (directly or through the container). The cursors can then be manipulated and scrolled. At this point, the RDO data-bound control is successfully bound.
Back to Using RDO Databinding in Visual C++.