There was an email thread going around the NZ .NET mailing list yesterday asking whether an enterprise winforms developer should be looking at doing a new development of their LOB application in WPF or if it is still a little early.
Chuck suggested that "For most mainstream line of Business applications Microsoft still recommends using Windows Forms."
He goes on to say that "Until there is a 100% superset of WPF controls to COM AND Winform controls you are looking at the answer being: Use the best technology and integrate them together. For the time being that is almost certainly hosting your application Windows forms and doing the integration to WPF through WPF controls and elementhost”.
I have a slightly different take on this...
Although we are still at the mid stage of the process of porting all the controls and releasing the final cut of our WPF design surfaces (January CTP of VS "Orcas", Blend) some companies have chosen to build entirely in WPF for new applications. Remember that the .NET 3.0 platform is now released and it is also deployed by default in Windows Vista.
If you have complete control to build from scratch, you can deal with the bleeding edge and your target audience can run .NET 3.0 then absolutely build a true “next generation WPF application” like those at http://www.thirteen23.com. Kevin’s Bag-o-Tricks adds to the WPF controls shipped out of the box and includes a number of components (content slide, search visualisation) that were used in the New York Times reader application.
I see also today that Xceed has released a FREE version 1.0 of their DataGrid component for WPF (if you have .NET 3.0 installed you can try it here). This is a great example of the ISV/ component ecosystem shipping tools that make life easier for industry developers.
There is absolutely a place for new applications completely written in WPF and right now it is front and centre! New York Times Reader, Yahoo’s new IM client and I know we will be seeing many more arriving throughout 2007.
The key difference being that in this brave new world we are separating the roles of a designer and a developer but alowing them to work together on the same code base (although a person can of course still do both roles). Testament to this is probably Lee from Frog design that built the entire UI for the Yahoo IM client without any prior knowledge of coding in .NET. Lee is sharing his experiences with other "designers" like him that are looking at this technology on his new tutorial site http://contentpresenter.com.
IMO .NET developers that are wanting to get a grasp on this technology should read Code + Markup (which I have read and is heavily developer focused) or the recently released WPF Unleashed by Adam Nathan (software design engineer at Microsoft).
My opinion not Microsoft’s :)