Welcome to Sign in | Join | Help

News

  • View Simon Guest's profile on LinkedIn Simon Guest's Facebook profile
Browse by Archive:




WPF Client and XBAP Design Considerations
 

If you've been involved in any WPF development, you'll know that there are two main ways of deploying a WPF application:  You can create a client executable that runs standalone or an XBAP (XAML Browser APplication) that runs in the context of a browser.  Regardless of the technical implications of selecting one over the other, there are a number of design implications that I believe many people don't realize until they start down either path.

For example, I've been working on a project recently to migrate a Windows Forms application to WPF.  As we started the migration we got thinking about deployment - our goal was to make deployment of the WPF application as painless as possible.  Conversations ranged from custom MSIs to blind installs etc.  After reviewing all options, a decision was made to host the WPF application in the browser - using an XBAP.  We concluded that this would offer the best end user experience, and the security tradeoffs of running in a sandboxed environment were something that we could deal with.

What we didn't think about however was the design considerations of such a decision.  For example, the original client application relied heavily on the use of "right click context menus" to navigate the data.  This is a perfectly natural way of navigating using a client application - even with WPF - but when we moved to the XBAP model  the immediate feedback from users was that they "didn't get it" without reading our instructions.  (Very few people expect to be able to right click on a web page and not get the standard browser right-click menu). 

 

Although the function of the application remained identical, the hosting of the application introduced some under recognized principles of user experience that we just overlooked (and as a result, we now have to go back and implement more "browser-accepted" design principles before we can release it to a wider audience!).

The moral of the post?  Just because you can easily deliver a different experience from a technical standpoint doesn't mean that you can rely on the same, underlying user experience principles.

Comments

Christopher Steen

ASP.NET 2.0 Tips and Tricks and ASP.NET, IIS7 and ASP.NET AJAX End to End Talks [Via: ScottGu ] Embed...

# February 5, 2007 10:20 PM

indrajit

This is a small but very useful tip which i will consider henceforth
# April 18, 2008 1:08 AM
Leave a Comment

(required) 

(required) 

(optional)

(required) 

  
Enter Code Here: Required

Comment Notification

If you would like to receive an email when updates are made to this post, please register here

Subscribe to this post's comments using RSS