Overloading IPropertyNotifySink

Many ActiveX Control Containers implement a modeless property browsing window. If a control s properties are altered through the control s property pages, then the control s properties can get out of sync with the container s view of those properties (the control is always right, of course). To ensure that it always has the current values for a control s properties, an ActiveX Control Container can overload the IPropertyNotifySink interface (data binding) and also use it to be notified that a control property has changed. This technique is optional, and is not required of ActiveX Control Containers or ActiveX Controls.

Note that a control should use IPropertyNotifySink::OnRequestEdit only for data binding; it is free to use OnChanged for either or both purposes.