Click here to Skip to main content
15,881,938 members
Please Sign up or sign in to vote.
5.00/5 (1 vote)
See more:
What are advantages and disadvantages of WPF?
Posted

A similar question was asked before. See the answer here[^].
 
Share this answer
 
Comments
Sergey Alexandrovich Kryukov 2-Jun-11 3:46am    
Good source of info and opinions. My 5.
Did you see my answer?
--SA
Abhinav S 2-Jun-11 4:18am    
Thank you SA.
WPF is a great move of Microsoft out of Windows! It's not a secret, that Microsoft is working at the new non-Windows OP bases purely on CLI sitting right on top of HAL. It you look at WPF architecture, you will see it has almost nothing to do with Windows: no legacy controls, no Windows messages. It's based on hardware support (which means better performance) and can be moved out of Windows OS in a relatively short period of time.

If has mush higher-level tools, compared to Forms. For example, normally there is no rendering based on WM_PAIN message or anything like that. You create objects and put them on canvas. 3D, animation, data binding have different levels, including really high level. Very natural and feature-rich support of vector graphics. I'm using InkScape working with SVG, export it to XAML and use during design-time or run-time. Scaling, panning, transparency, all kinds of graphical transformation is already done in the library.
The total volume of WPF library is very impressive. Forms looks just miserable.

The library is much more modern in terms of features and quality. Everything is anti-aliased, nothing is flickering…

Problems:

Support of design-time, synchronization with Designer and validation of the project during design-time is a bit clumsy but is being improved. As design-time is a separate issue, alternative development techniques are quite possible though.

There is not support on WPF on Mono yet. I can run my Forms application on my Linux system without recompilation, but I don't know when I can get to it with WPF.

Some very important components are not yet developed or does not have comprehensive feature set yet. Where is the analog of PropertyGrid, for example? Everything can be developed though, with better productivity.

—SA
 
Share this answer
 
Comments
Wayne Gaylard 2-Jun-11 3:35am    
Well put!
Sergey Alexandrovich Kryukov 2-Jun-11 3:44am    
Thank you, Wayne.
--SA
Abhinav S 2-Jun-11 4:18am    
Good answer.
My 5.
Sergey Alexandrovich Kryukov 2-Jun-11 4:25am    
Thank you, Abhinav.
--SA
Advantage of WPF Application:

1> Tight multimedia integration :
----------------------------------
to use 3-D graphics, video, speech, and rich document viewing in Windows 32 or Windows Forms applications, you would need to learn several independent technologies and blend them together without much built-in support. WPF applications allow you to use all these features with a consistent programming model.

2> Resolution independence :
-----------------------------
WPF lets you shrink or enlarge elements on the screen, independent of the screen’s resolution. It uses vector graphics to make your applications resolution-independent.

3> Hardware acceleration :
---------------------------
WPF is built on top of Direct3D, which offloads work to graphics processing units (GPUs) instead of central processor units (CPUs). This provides WPF applications with the benefit of hardware acceleration, permitting smoother graphics and enhanced performance.

4> Declarative programming :
-----------------------------
WPF uses Extensible Application Markup Language (XAML) declarative programming to define the layout of application objects and to represent 3-D models, among other things. This allows graphic designers to directly contribute to the look and feel of WPF applications.

5> Rich composition and customization :
---------------------------------------
WPF controls are easily customizable. You need not write any code to customize controls in very unique ways. WPF also lets you create skins for applications that have radically different looks.

6> Easy deployment :
---------------------
WPF provides options for deploying traditional Windows applications (using Windows Installer or ClickOnce) . This feature is not unique to WPF, but is still an important component of the technology.

7> Culturally aware controls:
-----------------------------
static text in controls and the return data for the String function are modified according to the culture and language specified by the end user's operating system.
 
Share this answer
 
Comments
prprasad2000 8-Jan-16 4:59am    
Nice one.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900