This is pure feedback and unscientific research for me. From my own experience and the feedback from other people so far we’re seeing a handful of general navigation or structural paradigms. I’m genuinely interested in hearing what other people are doing here.
- Browser Style Navigation – Only one logical screen is shown and active at a time and it takes over the majority of the window real estate. I’ve often heard this referred to as “web style navigation” as it’s very similar to the experience you get from a web browser. You generally tear down the existing screen completely when you’re navigating to a new screen. I’ve only built one of these myself and I thought they were pretty rare, but I’m seeing a lot of Silverlight or Flex work that uses this paradigm.
- “Tabbed MDI” – Visual Studio.Net or Eclipse or IntelliJ are typical examples. You are hosting the main screens within some sort of tabbed display in the main pane of the application. You might have additional panes for navigation, actions, or querying around the main pane. This seems to work best for applications that deal with documents are multiple work items. Most of the applications I’ve built, including StoryTeller, fall into this paradigm.
- Dashboard. The stock trader example from Prism is what I’m talking about here. You may potentially have several more or less independent “applets” hosted in different areas in the main window running simultaneously. I’ve never built an application like this (well, except for our new configurable dashboard feature at work), but I’m told that it’s very common. I think Prism and to a lesser extent, Caliburn, are both built with this paradigm in mind.
I’m assuming nobody is actually building real MDI applications any longer, but you never know.
How about it? What are you doing? Anything I missed?
Thank you in advance for your feedback. I’m receiving a lot of good help from these blog posts.