You can do it that way. I've worked on a few projects that have done that.
I found them to be a serious pain. Don't get me wrong, creating generic subclasses that handled the data in and out of the controls was no big deal, it was all the edge cases that caused no end of grief. Text fields and the like are no big deal but it was the Listboxes that were almost impossible to code properly.
Real Studio database classes are pretty generic - almost too generic. Data binding at the control level doesn't really help you much, IMO, because the data conversion still has to be done to get it into and out of the database. We created ActiveRecord to make that a bit easier and to let the IDE help us (auto complete and datatype checking). More on ActiveRecord at
http://www.bkeeney.com. Using AR we usually do generic Load, Save, Validate functions on our window/pages and that's worked well for us.