tags:

views:

1478

answers:

17

I had a discussion with some colleagues mentioning that there are not too many projects that we do which make use of WPF for creating UI for a windows application (we almost always use Windows Forms instead).

  • Are your experiences the same - i.e. there is not too much adoption of this technology?
  • Why do you think that is? And will we have a time when we see much more of WPF?
A: 

WPF is being used more often for quickly creating impressive UIs - but not so much for whole applications. Look at the Microsoft Expression suite. That's all created with WPF. But as I understand it, the raw rendering code is still in C++.

Also, look at Silverlight, that is a subsection of WPF, and that is taking off in quite a big way.

Mark Ingram
A: 

@Mark, yes Silverlight is popular and we are doing a large number of projects on that.

But pure WPF windows apps, not too many.

Vaibhav
+1  A: 

Though WPF was introduced few years ago it was too raw to use it in the real world apps. Major problem that stops WPF from wide adoption is a lack of RAD tools and out-of-box components. Currently we have Blend, more or less working Cider, but usable versions of these tools came not so long ago. Another reason is a completely different architecture which leads to longer development time as compared with WinForms due to prolonged learning\adoption period for developers. I think we will see rising of WPF in the next few years.

aku
A: 

I think adoption is a little flaky thus far, but that's a story WPF shares with .NET anyway.

Looks like Silverlight is taking off much, much faster.

Jon Limjap
+7  A: 

Have a look at this survey it was done by a Windows Forms Contol Vendor in Australia. Personally i have worked on two commercial projects in the last year that were using WPF to varying degrees.

The adoption of WPF is on the rise. Microsoft i believe is putting all their eggs into the wpf basket.

Mark Harris
They really are putting all their eggs on this, look at RIA Services for example.
Peter
+2  A: 

Absolutely - the adoption is tiny. There was lots of hype but it does not seem to have materialized.

I used WPF for one project and I can certainly say it left a very unfinished taste in my mouth. It was far too difficult to acheive simple things and the whole thing had very many rough edges - the reasons behind them certainly existed but were not obvious or even visible at all. The Visual Studio designer completely bugged out for most of my pages and I never did figure out why...

All in all, I'd say WPF is barely beta-quality from a developer friendliness standpoint.

Sander
A: 

Adoption of WPF, both within MS and without, is negligible.

DrPizza
A: 

"But pure WPF windows apps, not too many."

Since WPF (Windows) uses the GPU to render, I wonder how many games (non shooters or something that requires lots of performance) will start using WPF rather than DirectX...

Giovanni Galbo
Indeed. I've been thinking about writing some games using WPF...
Jon Harrop
A: 

People usually jump the technology bandwagon when there is a a real productivity to gain. Something to compensate for all the productivity loss that normally occurs when you adopt a new platform. WPF is just not there yet. It still takes more effort and more time to build a WPF app than a Forms app, and by a long shot.

Combine this with less documentation on the net about WPF than Windows Forms, less people with WPF experience, less blogs on WPF, less books on WPF, less tips/tricks,etc.

And don't get me started on XAML. Is it XML? is it a script? is it a code? Why did they decide that a hyperlink is just a label property? A lot of things still need to be ironed out there.

I cannot afford to build my next project in WPF, it will cost me a lot more to do it (in manpower and time), with nothing to show for in return. At the moment all we do in WPF is pure-research-inhouse-hobby projects.

Radu094
A: 

Okay, so it would be safe to say that its not very popular. Thank you all.

Vaibhav
You might think it's not popular, but it has great potential to be popular. There are barriers to entry and barriers from tooling perspective that is delaying it's emergence.
Vin
+7  A: 

WPF Rocks in terms of what the technology can do. It's simply the best UI building technology on the planet (my opinion). But, but there is a huge initial and long term investment in learning and getting your head around it. Also from tooling perspective it has barriers like unusable Cider designer, you've to get blend to do styling etc.

I am sure it will become popular, but would take time. But right now it's not so popular.

  1. Check this thread on WPF
  2. Check this conversation on msdn forums about WPF for LOB apps
Vin
A: 

I recently got into, and at first I thought it was clumsy, then I got into it more and started flying.

The concepts to really understand is the DataContext and how to bind. Mix it with LINQ to SQL and it starts being very productive.

I now prefer developing in WPF instead of WinForms (my previous favorite).

I think it will catch on if people decide to learn.

I highly recommend these books:

WPF Unleased and LINQ Unleased

A: 

I don't use it and I highly doubt I ever will. I'm an Ajax and Open Web dude...!

Thomas Hansen
+1  A: 

I'm currently working on a WPF project - my first one. The learning curve has been incredibly steep, but in the end I think WPF is a great technology. The potential is fantastic, especially for advancing the state of data visualisation. I really like the data binding features, and the potential of styling. But it really does take a while to get your head around this.

I think that Silverlight adoption will eventually drive WPF adoption back on the desktop - or maybe there won't be a desktop as much of what can be accomplished with Silverlight will replace many previously desktop applications.

Craig Shearer
+1  A: 

I am playing around with WPF and I must say I am not impressed. I seek a technology which will help me be productive in creating business applications. I remember building my first classic ASP website and being disgusted at the spaghetti code required to build a simple app. Viewing a single page I found HTML and java script mixed with vbscript with include files and calls to com objects--in short, a bloody illogical mess. In my view, it is important to have a simple and VISUAL development model with standards. I built many VB6 and .Net windows apps and they have a simple metaphor for development, making them easy to debug and modify by developers who did not write the original app. Forms encapsulate presentation logic, modules and classes in referenced assemblies encapsulate business logic and data logic. ADO.Net and other tools make data access robust, scalable, dynamic and customizable. Resizing windows controls and graphics to suit monitor resolution or client preference is easily done with Win Forms.

It may be that WPF has many advanced features in graphics, but for most business apps, form should follow function--in other words, I am not putting goofy animated graphics on my banking windows app.

One of the reasons I have not liked web development is because of the wide variety of ever-changing and complex technologies required for relatively simple applications which don't deliver enough significant change in actual functional results.

Oh well, that's my two cents.

' )

Jim
The whole point of WPF is to seperate the concerns of the domain model from the presentation. With winforms, this seperation isn't obvious. You should try learning the mvvm pattern, instead of trying to plow through a wpf app as if it were winforms.
Pierreten
A: 

Did you not check out controls and components available that ?

  • xceed
  • infragistics
  • telerick
  • devcomponents

etc....

abmv
+1  A: 

We deployed a pretty major WPF application for a large investment bank I worked for. It turned out extremely successful, involving 3d visualization of OLAP data that allowed quicker trend analysis. It's being used extensively.

Pierreten