whitespace COMPANY whitespace SERVICES whitespace PRODUCTS whitespace PURCHASE whitespace SUPPORT whitespace CONTACTS whitespace Home whitespace Contact Us whitespace Site Map whitespace

WPF introduction

What is WPF

WPF (part of WinFX/.NET Framework 3.0) is a brand-new presentation framework, built on top of the .NET Framework 2.0, that was originally designed to be used on Windows Vista, but it was also adopted for Windows XP as well. It allows developers and designers to create applications with much higher level of usability and incredible visual appearance, spending less time to the development and allowing designers to show full power of their imagination.
These are the most amazing features of WPF:

  • Rich hardware accelerated animations, transition effects and so on.
  • Cool special effects, like blur, emboss and so on.
  • Advanced text rendering system - WPF natively supports XPS documents format.
  • Vector graphics allows to do any kind of transformations with image before displaying it to the end user. This also adds such important feature to WPF applications like DPI awareness.
  • Ability to combine 2D and 3D graphics easily.


First of all I need to say that most of the cool features can be done on the most of the modern frameworks and languages. So, why should you use some unknown framework if everything can be done without it? The answer is time. Using WPF as a platform for development new applications allows adding different special effects and cool animations in no time. And if I say time, I also mean the resulting cost of the project - in most cases you get much more attractive solution while you pay the same money.
One can say that good-looking application can be done in web with Macromedia Flash or something like that, but in this case the application will have only the presentation level and not business logic - separate application will be implementing business logic (and it will engage more developers into the development process). So WPF will be the best choice when developing good-looking business application with high level of usability.
All graphics in WPF is rendered through the DirectX pipeline, so it takes all advantages of the modern PCs while rendering complex data in real time. But it does not mean that it will look worse on a low-end PC - WPF rendering engine will be switched to software mode to ensure that user sees exactly the same data, that he was intended to see.
At the same time WPF allows to extend battery life in notebooks by reacting to the changes of the power source - some extensive graphics can be temporary disabled.

What's with development

WPF is implemented atop .NET Framework 2.0, so business logic of the application can be implemented by using of any of .NET compliant languages (C#, VB.NET, C++.NET, J#, Delphi.NET and other) which are treated as the most secure languages today. Visual appearance of any existing .NET solution can be enriched with WPF. Even existing Win32 solutions can be used through the interoperability services.
All design in WPF has been moved out of the code to make the designer and developer more independent, so their work can be paralleled better, and designer is not required to have any skills in programming.

How about compatibility

WPF application can be run at any OS that supports Framework 3.0. Currently those operation systems are Windows XP with Service Pack 2, Windows 2003 Server with Service Pack 1 and Windows Vista (Framework 3.0 is already preinstalled on Windows Vista). Later Framework 3.0 will be possibly ported on Linux as it was partially done with Framework 2.0. Also WPF has minimum requirements for PC itself if user wants it to fully hardware accelerated - video card should support DirectX 9.0c and Pixel Shaders v1.1. Currently that requirement is met even by almost every integrated video card on desktop PC's and laptops.

Home | Next >

Author: 2007 Dima Zaharov, Department Manager/ArtfulBits
Company | Services | Practices | Technologies | Career | Contacts | Privacy
© 2005-2019 ArtfulBits. All rights reserved.