Don't design time table using grid view. Use time table separately, and separately the UI presentation for it. It's really important to isolate UI from other aspects of the application, and to isolate the
data model from everything else. Other part of applications can be aware of data model, but the data model should be agnostic to application, so it would be one of the fundamental functional units, on the very bottom of the dependency diagram.
I suggest you learn and analyze applicability of the following
architectural patterns (
http://en.wikipedia.org/wiki/Architectural_pattern_(computer_science)[
^]):
MVVM — Model View View Model,
http://en.wikipedia.org/wiki/Model_View_ViewModel[^],
MVC — Model-View-Controller,
http://en.wikipedia.org/wiki/Model-view-controller[^]),
MVA — Model-View-Adapter,
http://en.wikipedia.org/wiki/Model–view–adapter[^],
MVP — Model-View-Presenter,
http://en.wikipedia.org/wiki/Model-view-presenter[^].
Pay attention for the motivation of those architectures. If you understand it, you would be able to create better design ideas.
As to the isolation of the UI and data model, you should better understand
loose coupling and
separation of concerns:
http://en.wikipedia.org/wiki/Loose_coupling[
^],
http://en.wikipedia.org/wiki/Separation_of_concerns[
^].
Good luck,
—SA