This Wrox Blox presents WPF along with the Extensible Application Markup Language (XAML), showing developers how to customize existing user interface controls such as the Button, Progress Bar, CheckBox, Radio Button, and Label along with creating two new custom controls. The Windows Presentation Foundation (WPF) released with the .NET 3.0 SDK provides a rich foundation for developing and customizing user interfaces. Unlike existing user interface development tools like GDI and GDI+, WPF is entirely vector-based, offering the developer enhanced two-dimensional and even three-dimensional rendering in the presentation layer. The author customizes these existing controls using XAML to:* Create control templates to define their appearance and behaviors.* Create two new custom controls, one derived from System.Windows.UserControl and the second from System.Windows.Control.* Illustrate the interoperability of WPF content in Windows Forms and Win32 applications.* Create the code samples using Microsoft Visual Studio 2005 with extensions for .NET 3.0 and the .NET 3.0 SDK. These code samples contain four projects: A C# WPF control library that contains the control templates and a User Control containing the customized Windows controls and the two new custom controls; a C# WPF application to host the WPF User Control; a C# Windows Forms application to host the WPF User Control; and a C++ Win32 application to host the WPF User Control.