Applied WPF 4 in Context

By Sam Hobbs Sep 18 2011
Explains application development using WPF and a variety of related topics
    • Like
    • Love It
    • Awesome
    • Interesting
    • It's Okay
    • Thumbs Down
  • 8.2k
  • 0

I really want to learn WPF. I read this entire book and I still need to learn WPF; this book did not teach me WPF.

This book is not for learning WPF or XAML. It describes development of an application that is written using WPF but there is very little explanation of WPF. The few samples that it does have are portions of the application that it describes. Instead of samples showing material being discussed, the samples seem to be pieces of the application that is the best fit for showing material being discussed.

The first chapter contains introductory material that can be distracting. It assumes knowledge of CSS. It compares Windows Forms to WPF without explaining WPF, which was very distracting for me. It also does not describe XAML very much, which was a big disappointment for me.

The second chapter briefly describes Third-Party Libraries and Controls for use with WPF without describing WPF very much. Then introduces the Apress TimeTracker application without describing WPF. Then briefly describes Layered Applications and N-tier Applications without describing WPF. Then it briefly describes the TimeTracker Architecture some more then it briefly describes application design, all without describing WPF.

The third chapter describes Expression Blend but very little about WPF or XAML. This books requires Expression Blend and suggests that if you have not purchased it, use the trial version good for 60 days. I understand that Expression Blend is a superior environment for many things, including developing UIs. I just think that we need to understand XAML a little at least.

The fourth chapter describes the view, which is the UI. Expression Blend is used to create a prototype UI. I would have expected that the explanation of the view would include an explanation of XAML, but there is nothing about XAML. The TimeTracker application and the book uses Microsoft Unity as an IoC (Inversion of Control) container for application flow (navigation). The book therefore jumps right over any description of why an application flow library is needed. This chapter shows a sample use of Microsoft Unity but does not explain Microsoft Unity very much.

The fifth chapter describes resources and briefly describes the use of resources for styles. Then it mentions Triggers and a little bit about controls, views, User Controls, Data Validation and a few other things. I think the content of this chapter is what a book needs to be about, but it is just one chapter in this book that jumps around.

The remaining chapters are about The Entity Framework (and IDisposable), Data Binding, Command Handling and Event Routing and Testing with TDD.  None of that is about WPF that I know about; if any of that is about WPF then the book sure does not make that clear. Instead it seems to describe all of that in terms of application development ("in context").

The book attempts to explain many things but for each of many topics it says the topic is too complex to be explained in depth and suggests that we refer to something else for a more thorough explanation. Therefore this book reminds me of the saying "Jack of all trades, master of none". I really think it tries to do too much and therefore does very little. It says virtually nothing about XAML. The Entity Framework is something I definitely want to learn but it is ADO .Net, not WPF and The Entity Framework requires a separate book to be explained adequately. The same can be said for everything in this book, including WPF.