//This method alerts the container that we need data. The container should then use the Set property of sender.data
 protected void StartModeling()
 {
     if (DataRequested != null)
     {
         ModelingCallback e = new ModelingCallback(MakeModel);
         DataRequested(this, e);
     }
 }
 //Raise a request for access to the model data - should be raised by the containing TabPage when the tab is entered.
 protected void RequestModelData(object sender, EventArgs args)
 {
     if (DataRequested != null)
     {
         ModelingCallback e = new ModelingCallback(SetModelData);
         DataRequested(this, e);
     }
 }