PacktLib: MVVM Survival Guide for Enterprise Architectures in Silverlight and WPF

MVVM Survival Guide for Enterprise Architectures in Silverlight and WPF

Credits

Foreword

About the Authors

About the Reviewer

www.PacktPub.com

Preface

Presentation Patterns

The Project Billing sample application

History of presentational patterns

Summary

Introduction to MVVM

History

Structure

WPF and Silverlight enablers

MVVM project billing sample

Benefits of MVVM

Issues and pain points of MVVM

MVVM Light

Summary

Northwind —h; Foundations

Northwind requirements

Presentation tier foundation

Data access tier

Listing the customers

Adding tabs

Viewing customer details

Wiring up the customer list box

Summary

Northwind—h;Services and Persistence Ignorance

Adding a Service Layer

Integrating the Service Layer

Persistence ignorance and custom models

Summary

Northwind—h;Commands and User Inputs

Pure MVVM

Making it easier with frameworks

Updating customer details

Gestures, events, and commands

Summary

Northwind—h;Hierarchical View Model and IoC

Adding orders to customer details

Viewing order details

Summary

Dialogs and MVVM

Should we make a compromise?

Dialog service

Mediators

Attached behaviors

Summary

Workflow-based MVVM Applications

WF for business rules execution

WF for controlling application flow

Summary

Validation

Validations and dependency properties

Error templates

Validation in MVVM-based applications

Error notifications

Summary

Using Non-MVVM Third-party Controls

Using attached behaviors

Using binding reflector

readonly CLR properties (with no change notification support)

Using MVVM adapters

Summary

MVVM and Application Performance

Asynchronous binding

Asynchronous View Model construction

Priority binding

Virtualization and paging

Using BackgroundWorker

Targeting system configuration

Event Throttling

Lazy Initialization

Summary

MVVM Frameworks

Binding at a Glance

Binding at a Glance

Binding at a Glance

Binding at a Glance

Binding at a Glance

Binding at a Glance

Binding at a Glance

Binding at a Glance

Binding at a Glance

Binding at a Glance

Binding at a Glance