Ok, I'm making a control that extends DataSourceControl, and it seems like there is many ways to go about things, and I'm not sure how they were intended to be used.

It dosen't appear that I need to extend DataSourceControl at all, I can just make a bunch of functions that return DataSet objects and then create a bunch of ObjectDataSource objects that call them.

This seems like a better solution, what additional functionality do you gain via a DataSourceControl?