Book Image

Mastering Windows Presentation Foundation - Second Edition

By : Sheridan Yuen
Book Image

Mastering Windows Presentation Foundation - Second Edition

By: Sheridan Yuen

Overview of this book

Microsoft Windows Presentation Foundation (WPF) provides a rich set of libraries and APIs for developers to create engaging user experiences. This book features a wide range of examples, from simple to complex, to demonstrate how to develop enterprise-grade applications with WPF. This updated second edition of Mastering Windows Presentation Foundation starts by introducing the benefits of using the Model-View-View Model (MVVM) software architectural pattern with WPF, then moves on, to explain how best to debug our WPF applications. It explores application architecture, and we learn how to build the foundation layer of our applications. It then demonstrates data binding in detail, and examines the various built-in WPF controls and a variety of ways in which we can customize them to suit our requirements. We then investigate how to create custom controls, for when the built-in functionality in WPF cannot be adapted for our needs. The latter half of the book deals with polishing our applications, using practical animations, stunning visuals and responsive data validation. It then moves on, to look at improving application performance, and ends with tutorials on several methods of deploying our applications.
Table of Contents (15 chapters)

What this book covers

Chapter 1, A Smarter Way of Working with WPF, introduces the Model, View, View Model (MVVM) software architectural pattern and the benefits of using it with WPF.

Chapter 2, Debugging WPF Applications, provides essential tips on various methods of debugging WPF applications, ensuring the ability to iron out any problems that may occur.

Chapter 3, Writing Custom Application Frameworks, introduces the indispensable concept of application frameworks, with early examples that will be built upon as the book progresses. You will have a fully functioning framework, with which to build your applications upon, by the end of the book.

Chapter 4, Becoming Proficient with Data Binding, demystifies data binding and clearly demonstrates how to use it in a practical application. A plethora of examples will help you to understand which binding syntax to use in any given situation, and to be confident that your bindings will work as expected.

Chapter 5, Using the Right Controls for the Job, explains which controls to use in particular situations, and describes the various ways to modify them when required. It clearly outlines how to customize existing controls and how to create custom controls when required.

Chapter 6, Adapting the Built-In Controls, focuses on changing control behavior through extension. It first investigates how the built-in controls enable us to manipulate them through derived classes, then describes how we can enable this technique in our own controls. It ends with an extended example, showing how to attain our requirements through control extension.

Chapter 7, Mastering Practical Animations, explains the ins and outs of WPF Animations, detailing this lesser known functionality. It concludes with a number of ideas for practical animations and continues to build upon the custom application framework.

Chapter 8, Creating Visually Appealing User Interfaces, offers advice for getting the most out of the WPF visuals, while remaining practical, and provides handy tips on making applications stand out from the crowd.

Chapter 9, Implementing Responsive Data Validation, presents a number of methods of data validation to suit every situation and continues to build upon the custom application framework. It covers full, partial, instant, and delayed validation and a variety of different ways to display validation errors.

Chapter 10, Completing that Great User Experience, provides tips for creating applications with a great user experience. Concepts introduced here, such as asynchronous data access and keeping the end users well informed, will substantially improve the existing custom application framework.

Chapter 11, Improving Application Performance, lists a number of ways to increase the performance of WPF applications, from freezing resources to implementing virtualization. If you follow these tips and tricks, you can rest assured that your WPF applications will perform as optimally as they can.

Chapter 12, Deploying Your Masterpiece Application, covers the final requirement for all professional applications—deployment. It includes the older method of using the Windows Installer software, along with the more common method of using the ClickOnce functionality.

Chapter 13, What Next?, summarizes what you have learned from this book and suggests what you can do with many of your various new skills. It provides you with further ideas on extending the application framework.