The WPF Client is a standalone application that hosts the Views developed using the WPF/XAML technology in a Client Framework project. At runtime, it displays a View that corresponds to a specific ispec inside a WPF Container.
The WPF Client uses
Managed Extensibility Framework (MEF)
Model-View-ViewModel (MVVM) pattern
MEF
MEF is a component of the .NET framework. It can be used in client applications that use WPF or in any other technology that uses ASP.NET.
MEF allows .NET applications to discover and use extensions without any configuration settings. It also does not have any dependency on an application assembly. Therefore, it permits the reuse of extensions in various applications.
In the WPF applications, the DataViewModels or Views assemblies are loaded dynamically through MEF at runtime.
MVVM
MVVM uses the data binding infrastructure. By binding the properties of a View to a ViewModel, you can achieve loose coupling between the Data and the View. You do not need any code (c# code) in the Views to enable the DataModel to populate or update the View when data in the DataViewModel changes.