Printed entirely in color, with helpful figures and syntax coloring to make code samples appear as they do in Visual Studio. Windows Presentation Foundation (WPF) is a key component of the .NET Framework 3.0, giving you the power to create richer and more compelling applications than you dreamed possible. Whether you want to develop traditional user interfaces or integrate 3D graphics, audio/video, animation, dynamic skinning, rich document support, speech recognition, or more, WPF enables you to do so in a seamless, resolution-independent manner. Windows Presentation Foundation Unleashed is the authoritative book that covers it all, in a practical and approachable fashion, authored by .NET guru and Microsoft developer Adam Nathan. · Covers everything you need to know about Extensible Application Markup Language (XAML) · Examines the WPF feature areas in incredible controls, layout, resources, data binding, styling, graphics, animation, and more · Features a chapter on 3D graphics by Daniel Lehenbauer, lead developer responsible for WPF 3D · Delves into non-mainstream speech, audio/video, documents, bitmap effects, and more · Shows how to create popular UI elements, such as features introduced in the 2007 Microsoft Office Galleries, ScreenTips, custom control layouts, and more · Demonstrates how to create sophisticated UI mechanisms, such as Visual Studio-like collapsible/dockable panes · Explains how to develop and deploy all types of applications, including navigation-based applications, applications hosted in a Web browser, and applications with great-looking non-rectangular windows · Explains how to create first-class custom controls for WPF · Demonstrates how to create hybrid WPF software that leverages Windows Forms, ActiveX, or other non-WPF technologies · Explains how to exploit new Windows Vista features in WPF applications
In my opinion, WPF Unleashed is a book with strengths and weaknesses. I like to end on a positive note when I can, so let's get the weaknesses out of the way first:
Weaknesses
Chapters 2 and 3 introduce the bulk of the new concepts in WPF. This is a technology with a large number of vitally important details which need to be understood - not to mention a deceptively complex new markup language!
Adam Nathan introduces all of the new concepts in a 60 page whirlwind at the beginning of the book. From both a learning and reference standpoint, I think all of these concepts would have been much better presented in their own separate chapters.
This leads me to the next problem: using Unleashed as a reference. To me, a book is only a good reference if a reader can find a topic in the Index, go to the supplied page, and learn (or more likely, re-learn) that topic.
This book at least partially fails in both aspects. I have seen worse indexes, but this one is not good. Just as an example, you cannot find the term "Border" in the Index, despite the fact that Border is a WPF control and is mentioned several times in the book.
When you do manage to find the topic you're looking for, the information is often incomplete. For example, I could not find any reference to binding an Attached Property (referencing Attached Properties in XAML turns out to have special syntax). This is important information and is probably missing because the subject is only discussed in those damned Chapters 2 and 3!
Code examples often rely on previous work (a Photo Gallery application rears its head off and on throughout the book) when more self-contained examples would have been much clearer. You are also expected to have really memorized the heck out of Chapters 2 and 3. For example, to create a value converter using the explanation in Chapter 9, you'll have to also create the "local" namespace in your XAML (hint: see "clr-namespace" in the "Digging Deeper" box on page 33!). Are you likely to remember how to do this?
I cannot refrain from mentioning that Nathan likes to use the word "leverage" in place of "use". Perhaps you're immune to this, but after seeing it 6,000 times in Andrew Troelsen's C# and the .NET Platform I've been scarred for life.
Finally, though it cannot be called a "weakness" of the book, let ye be warned that WPF Unleashed is absolutely not for beginners. If you haven't done any prior .NET or Windows development, your hand will NOT be held.
Strengths
Now after all of the above it may come as a surprise that I recommend you buy this book if you want to get started with WPF!
With all of the color printing, this book is a highly visual tour of WPF's capabilities. It is an excellent visual reference for elements such as layout panels, controls, etc.
Also, Unleashed is pretty complete when it comes to the visual aspects of WPF such as 3D, transforms, animation, video, etc. Which I suppose is pretty appropriate considering that's what the WPresentationF is all about.
And you can create a WPF application after reading this book. Like me, you'll probably be doing a lot of Web searches to fill in the gaps of your knowledge. Microsoft's MSDN online has always been an excellent reference and continues to improve with age. Visual Studio 2010 (I'm using the free C# Express edition) is also surprisingly helpful with errors.
My first foray into creating a WPF application with this book has been full of a lot of 'WTF's. But I've left with a favorable impression of the technology overall.
NOTE: I have Petzold's Applications = Code + Markup coming to the house soon. I expect it to provide me with the sort of rigorous understanding of WPF's nooks and crannies I feel I'm missing. I may revisit this review when I've completed that book.
WPF Unleashed is a 2006 book in the Unleashed series about the new Microsoft paradigm on visual interaction, written by Adam Nathan. Windows Presentation Foundation is now the default Windows graphics framework, overriding Windows Forms, and it is based on XAML, which is used in Windows desktop applications, Silverlight applications, directly in Internet Explorer and even as a document template.
The book is nicely written, covering all the main characteristics of WPF, the functionality, the problems and tips on stuff that is not so clear. It also contains "Digging deeper" sections where some of the works "under the hood" are revealed. The book focuses more on the XAML implementation (the declarative part) rather that the code one, and I was happy to see that the code was written in C#.
All in all I liked the book and I wish I had more time to parse it completely. So far I've read the basic stuff (without the fancy graphics) so the first 10 chapters and I will wait for a moment of respite so I can detail some of the stuff I found in the book and how to implement them.
This is a great book. As you read it, questions will pop into your head and the book seems to anticipate your questions and answer them... It is exactly how a technical book should be! This book isn't really reference-only either. You can sit down and read through it if you can resist the urge to go start toying with WPF...
I did a VERY quick read of this book, after reading Ian Griffith's and Charles Petzold's first more thoroughly. The book is directed towards experienced .Net developers, and explains all the new concepts in WPF in a good way. The formatting of the book is fantastic, with colors and lots of graphics.
The book starts pretty basic, but gives a very detailed dive into CSS. This book shows you the different hacks needed for different browsers (ugh ugh IE)! David gives some really interesting tips and sites which display the power of CSS.
I believe I'll use this book as a CSS reference for months to come.
This is a great book on WPF. Just the printing itself is great -- full color every page! Each of the little "gotcha" boxes is extremely enlightening. This book is written by somebody who knows the internals of WPF very well.
This book is a good Jumpstart for learning WPF. It starts by explaining the new concepts introduced by WPF, then dives deeper in the different controls, styling mechanisms,...
Shortly, it covers what you need to know to start WPF development. Good book!
One of the best programming books I've read. It's extremely readable and extremely informative. It's a great introduction to the huge technology that is WPF.