Microsoft's Windows Presentation Foundation is the next generation in Windows forms applications. It combines the traditional high quality Windows experience and blends it with the next generation in user interface design, media content and high tech visualization.
Pro WPF in C# 2010: Windows Presentation Foundation With .NET 4 is an in-depth exploration of Windows Presentation Foundation (WPF) for professional developers who know the .NET platform, the C# language (there is a separate Visual Basic Version of this book available as well), and the Visual Studio.NET 2010 environment. It is 1216 pages in length and divided into 33 chapters.
The first two chapters describe the evolution of Windows Graphics and how they arrived to this point, and the new direction that WPF has taken with DirectX and the improved graphics engine. Then you take a look at the WPF API, the evolution and the Architecture of WPF. Next you will learn about XAML (pronounced "zammel"), which is the eXtensible Application Markup Language that WPF is built on, how it works with WPF, its properties and events, and how to load and compile XAML.
Chapters Three to Five focus around overview of your application. You begin with the layout panels that give you the ability to organize elements in a WPF window. Then you will see how WPF uses dependency properties to provide for data binding and animation. Lastly you see how event routing to send events through the elements of your user interface.
Chapters Six to 10 take a look at the controls that you will use in your application. Things like buttons, text boxes, and labels are examined. Then the application model is introduced as well as how both single instance and document based WPF applications are created. Finally, you will look at how to bind data, examine the command model, and how resources are handled.
Chapters 11 through 16 examine the visual aspect of your WPF application. You will begin with the use of styles in the WPF system which lets you set common property values to an entire group of controls. Then you will look at the 2-D drawing model to create shapes. Delving deeper you will learn to create complex paths to create more advanced graphics. You will use the visual layer for optimized drawing and then look at the WPF animation framework to create dynamic effects.
Chapters 17 to 22 take a look at what it takes to extend the existing WPF controls to create custom ones of your own. You will then see how to bind controls with data, how to format your bound data, and present your data in data bound views providing rich data displays. Finally you will work with lists, grids, and trees for a more enhanced user experience.
Chapters 23 to 25 work with the navigation within your application, beginning with how windows work within WPF. Then you will see how to build pages and keep track of navigation history. Next, you will consider command-oriented controls such as menus and toolbars.
The remainder of the book concentrates on other aspects of your application including documents, printing, rich media, sound, 3D graphics, interoperability, multi-threading, and deployment. All of these provide a good overview of the individual topics and you will learn how much easier they are to handle through the use of WPF.
Pro WPF in C# 2010 is a remarkably well written and well thought-out book. It covers just about all aspects of WPF and is well suited for anyone who is looking to get into WPF from a windows forms background. As dictated by the 'Pro' in the title, the scope of this book is very wide and may overwhelm someone who has not been exposed to the basics of WPF or WinForms. This version has been updated to make it current with Visual Studio 2010 and .NET 4.
While there is a lot to like about Pro WPF in C# 2010, I especially like the flow throughout the book taking you throughout all of its features. I also like the way it will serve as a good reference book for the future. If you want an in-depth look at Windows Presentation Foundation, then I very highly recommend this book.