Learn WPF
By Jim Christopher on December 18, 2014
WPF (Windows Presentation Foundation) is the most significant philosophy shift to come from Microsoft regarding the development of client applications. By separating application logic, UI behavior and style, WPF is a highly adaptive and powerful platform on which to build your applications. With this new platform comes a litany of new technologies including XAML, styles, data binding and MVVM, along with a new way of thinking that you must adopt to use WPF effectively.
Course series objective:
This series is a guide to becoming a fluent and effective WPF application developer. The course outline is designed to start with a broad overview of end-to-end WPF application development, it then directs the viewer through deeper investigations of specific WPF development techniques and practices.
Target audience:
This series is for developers new to WPF who are seeking both the big picture of WPF application development, as well as the technical caveats. Before getting started, you should feel comfortable using Visual Studio and programming with C#. If you need guidance on these prerequisites, please review the following courses:
- Introduction to Visual Studio 2013 - Part 1
- Introduction to Visual Studio 2013 - Part 2
- C# Fundamentals with C# 5.0
Course sequence:
Course | Duration |
Enterprise WPF with XAML and C# from Scratch | 2h 32m |
XAML Jumpstart: Getting Started With XAML | 3h 14m |
Introduction to WPF Custom Controls | 4h 09m |
WPF Data Binding in Depth | 6h 19m |
WPF Advanced Topics | 2h 44m |
Extending XAML Applications With Behaviors | 2h 48m |
XAML Patterns | 4h 49m |
Total | 26h 38m |
Course series description:
If you're new to WPF, getting a grasp on the new technologies and how they work together may seem daunting. The big picture around WPF is provided by Jesse Liberty's Enterprise WPF with XAML and C# from Scratch. This course offers enough WPF and XAML to produce a simple line-of-business application. Then, XAML Jumpstart by Kevin Dockx expands on this knowledge with more rounded coverage of built-in WPF controls, layout strategies, data binding, resources and styles. With this end-to-end background, you can then dive deeper into specific areas of WPF.
Introduction to WPF Custom Controls by Brian Lagunas pieces apart the techniques for successfully folding your custom UI elements into the WPF stack including commands, events, attached properties and theming.
Data binding, one of the most powerful features of WPF, is covered extensively in Brian Noyes's WPF Data Binding in Depth. From the types of data sources available, through data templates and validation, this course will make you thoroughly effective at leveraging WPF data binding in your applications.
At this point, you'll be versed in WPF strategy and ready to learn more advanced WPF tactics. Ian Griffiths, in his WPF Advanced Topics course, addresses several difficult and vertical WPF topics including threading issues, reusable UIs, styles and Windows Forms interoperability. Extending XAML Applications with Behaviors by Brian Noyes deconstructs the process of adapting the functionality of existing XAML objects with your own custom code. Finally, the XAML Patterns course from Michael Perry provides a patterns vocabulary for XAML design issues and their common solutions.