- Full Description
Microsoft's Windows Presentation Foundation (WPF) provides the foundation for building applications and high-quality user experiences for the Windows operating system. It blends the application user interface, documents, and media content, while exploiting the full power of your computer's operating system.
Its functionality extends to the support for tablet PCs and other forms of input device, and it provides a more modern imaging and printing pipeline, accessibility and UI automation infrastructure, data-driven user interfaces and visualization, and integration points for weaving the application experience into the Windows shell.
This book shows you how WPF really works. It provides you with the no-nonsense, practical advice that you need in order to build high-quality WPF applications quickly and easily. After giving you a firm foundation, it goes on to explore the more advance aspects of WPF and how they relate to the others elements of the .NET 4.0 platform and associated technologies such as Silverlight.
What youll learn
- WPF basics: XAML, layout, control essentials, and data flow
- WPF applications: Navigation, commands, localization, and deployment
- Advanced controls: Custom controls, menus, toolbars, and trees
- WPF documents: Text layout, printing, and document packaging
- Graphics and multimedia: Drawing shapes, sound and video, animation, geometric transformations, and imaging
Who this book is for
This book is designed for developers encountering WPF for the first time in their professional lives. A working knowledge of C# and the basic architecture of .NET is helpful to follow the examples easily, but all concepts will be explained from the ground up.
- Table of Contents
Table of Contents
- Introducing WPF
- Dependency Properties
- Routed Events
- The Application
- Element Binding
- Styles and Behaviors
- Shapes, Brushes, and Transforms
- Geometries and Drawings
- Effects and Visuals
- Animation Basics
- Advanced Animation
- Control Templates
- Custom Elements
- Data Binding
- Formatting Bound Data
- Data Views
- Lists, Trees, and Grids
- Pages and Navigation
- Menus, Toolbars, and Ribbons
- Sound and Video
- 3-D Drawing
- Interacting with Windows Forms
- The Add-in Model
- ClickOnce Deployment
- Source Code/Downloads
If you think that you've found an error in this book, please let us know by emailing to firstname.lastname@example.org . You will find any confirmed erratum below, so you can check if your concern has already been addressed.On page 47:Maybe I'm just confused, but here it is....
"Here's how you would gain access to the types you've declared in the MyProject namespace of the current project and map them to the prefix local:
Comment: I guess you could have a project named MyProject with Namespace called MyNamespace, but I think the author meant to write:
On page 148:
The page mentions the DragEnter Event. This is wrong. Only DragOver can prevent illegal drop on the drop target.
On page 170:The preceding paragraph says the ContentControl class is abstract. Figure 6-1 displays ContentControl as a Concrete class.
On page 274:The last sentence on the page states that, "There is no handy drop-down list of commands from which to choose". This may have been correct previously but, in Visual Studio 2010, the Command item in the Properties Window does provide a drop down list of Application and Navigation Commands.
On page 275:
In the middle of the page before Note:
...In the case of the ApplicationCommand.New command object, that means the Ctrl+O shortcut appears in the menu alongside...
the Ctrl+N appears, not Ctrl+O.
On page 736:I may just be missing it, but it appears that on pg 736, it states that the "DataGridCheckBoxColumn also adds a property named Content..." I've searched and searched, but it doesn't appear that this property exists. Not sure if this is a typo, or I'm just missing it.
On page 854:
In the current (10/2010) version of the ribbon control there is no PopularApplicationSkins class anymore. Microsoft has removed all these skins, so the code on this page does not work anymore.