I'm migrating an old vb desktop app to an ASP.NET web application version. The app allows someone to spec out a quote for a building, floor by floor, specify how many of each item, are needed on each floor. The existing DB is a very simple M:N Join
+----------+ +-----------+ +----------+
| Floors | | FloorItems| | Items |
+----------+ +-----------+ +----------+
| FloorId |--->| FloorId | | |
| ... | | ItemId |<---| ItemId |
| | | Quantity | | ... |
+----------+ +-----------+ +----------+
In the existing desktop app, the developers hacked together this 2D Matrix Grid for allowing the End-User to add the quantities of all items on all floors in one Screen. e.g.
| Item 1 | Item 2 | Item 3 | Item 4 | ....
--------+--------+--------+--------+--------+------
Floor 1 |
Floor 2 |
Floor 3 |
Floor 4 |
... |
This raises all sorts of problems though in a web UI as the Grid can potentially grow very wide as the item/product catalogue grows. page size is also an issue. not to mention validation of potentially hundreds of on screen inputs & auto saving them at regular intervals...
Can anyone recommend any other UI patterns for dealing with potentially large matrices of inputs in a web-app? Or point out some good examples online ?
(I'm toying with the idea of doing this one screen in Silverlight allowing a grid to scroll as far right as needed within the UI, and saving every textbox on-focus-exit)