Well, my previous post is at least a clue
The IBusinessBindable interface within the framework manages this. If you implement the IBusinessBindable interface on a control I am sure that you will start getting some ideas of how to create your own interface.Look at the 3rd Party Data Binding sample. This samples shows how to implement the IBusinessBindable interface. I know that you are not trying to implement data binding in this case, but rather manage the enabled state based on some type of event. You are going to have tie your interface or user control that you create into some type of event like the EditingStateChanged event.