Opting for right WPF Application Type

WPF unlocks the full power of a Windows PC for building rich desktop software. There is no Windows software requirement that WPF cannot satisfy. Major software applications like Visual Studio are built with WPF, proving its capability for even the biggest projects.

WPF Application is ideal for :-

  • Custom windows applications
  • Applications that require Rich UI
  • Applications that require access to full power of a Windows PC

Once you land up to the decision of using WPF , you should know about different application types in WPF in order to take a proactive decision early in your projects.

There are three different types of WPF Applications
– Traditional Desktop Applications
– Navigation Based WPF Application
– WPF Browser Hosted Applications (XBAP)

This blog summarises type, advantages and disadvantages of different types of WPF App and would help us choosing where to opt which.

Different types of WPF Application differs in their navigational structure and deployment schemes : –

Traditional Desktop Application

  1. Executable Assembly that runs on a local machine.
  2. Like any other desktop applications, these applications can be installed through setups , Windows Installer Packages or via Click Once technology to allow desktop applications to be distributed and installed via a remote web server.


Navigation Based WPF Applications

  1. WPF applications can optionally choose to make use of a navigation-based structure, which makes a traditional desktop application take on the basic behavior of a web browser application.
  2. Provides a “forward” and “back” button.
  3. The application itself maintains a list of each page and provides the necessary infrastructure to navigate between them, pass data across pages (similar to a web-based application variable), and maintain a history list.


XBAP Applications :-

  1. Build applications hosted in a webbrowser
  2. End User navigates to a url where XBAP(Collection of Pages) is transparently downloaded and installed to a local machine.
  3. These are compiled to .xbap files
  4. These applications run within a security sandbox to prevent untrusted applications from controlling local system resources.
WPF  Desktop WPF Navigation Application XBAP
Browser NA NA IE 6.0 + and Firefox
Deployment ClickOnce , SetUp, Installer ClickOnce , SetUp, Installer Runs in Internet Explorer Secure Sandbox
When To  Use Need Access to Windows Files, Desktop App,Can work offline
Multiple windows
Multiple versions (con?)
Better access to low level parts of the computer
Desktop App which requires navigation Intranet applications for Windows-oriented companies.
Disadvantages MS- OS Only, Requires full framework, MS- OS Only, Single browser
Requires full framework
Can’t interact with client’s file system etc
Single window
Single version,Mostly internal sites for companies that use MS-OS

Decision tree – Which WPF App should you choose ?

Decision tree for WPF Application type

Decision tree for WPF Application type

 

 

 

 

 

 

 

 

The above decision tree guides us in selecting the type of WPF Application that suits our need.

Leave a Reply

Your email address will not be published. Required fields are marked *


nine − = 5

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>