
This interface provides an alternative to the late-bound
nature of VB (and COM) IConnectionPoint events. By implementing
this interface in a form or class module, you can receive
notifications through the interface rather than the standard event
mechanism. This can be very useful if you have many owner-drawn
items or many UseCustomData items, as in this case events will
fire in rapid succession to each other.
To implement the IPropEventSink interface, you
type the following code into the top of your form or
class module:
Implements IPropEventSink
To start receiving notifications through the interface, use the SetCallbackSink method of the PropertyList control (the following code assumes that you will type this code into the object module that implements the interface):
prp.SetCallbackSink Me
From that point on, all of the events that are listed as methods of IPropEventSink will be called on your object, instead of being raised as an event. See the SetCallbackSink documentation for a list of events that will continue to fire as normal events.
Once events are being diverted to your implemented interface, you can respond to them in the IPropEventSink_* procedures of your object module, just as you would in a normal event mechanism. The difference is that because the interface is early-bound, "events" can be raised much faster.
Note: There is an owner-drawn item sample project included with the PropertyList control.