In this book, we discovered the MVVM architectural pattern and explored the process of developing a WPF application, while taking advantage of the pattern's Separation of Concerns and adhering to its principles. We investigated a number of different ways of communicating between the various application layers and structuring our code base.
Importantly, we considered a variety of ways of debugging our WPF applications and tracking down our coding problems. In particular, we revealed some tips and tricks to help us to identify the causes of our data binding errors. In addition, we also learned how viewing trace information can help us to detect problems, even after our applications have been deployed.
We moved on to investigate the benefit of utilizing an application framework and began designing and developing our own. We structured it in a way that did not tie...