MVVM Light Toolkit Fundamentals
This is a reference course about MVVM Light, the popular toolkit to build client applications in XAML.
What you'll learn
MVVM Light is extremely popular to build client applications in XAML. It supports Windows Presentation Foundation, Silverlight, Windows 8 (RT), and Windows Phone. This toolkit consists of helper components, project and item templates, code snippets, and recommendations on building a decoupled architecture for your application. MVVM Light works great in Blend and the Visual Studio designer to enable designer-developer workflow to improve the application's user experience. MVVM Light also makes it easier to decouple the application's components and to maintain it. This course introduces each component with in-depth explanations and samples. It also shows examples inspired from real-life applications where MVVM Light is used successfully.
Table of contents
- Introduction 1m
- Showing the Data Service Output 1m
- Building the Model 2m
- Building the Client Data Service 4m
- Creating the UI of the MainPage 1m
- Navigation and DetailsPage 3m
- Saving the Data Object, Testing 1m
- Summarizing the Issues of Non-MVVM 4m
- Theory: Understanding the MVVM Pattern (1) 2m
- Theory: Understanding the MVVM Pattern (2) 2m
- Theory: Understanding the MVVM Pattern (3) 3m
- Introduction 2m
- Refactor the Model Object 1m
- MainViewModel Part 1: Properties 3m
- MainViewModel Part 2: Commands and Services 9m
- Pairing the View and ViewModel, XAML 7m
- Adding ShowDetailsCommand and Testing the App 5m
- Adding Design Time Data and Designing in Blend 6m
- Unit Testing the Application 4m
- Summary 1m
- Introduction: What is MVVM Light and What is it Not? 2m
- The ObservableObject and the ViewModelBase 4m
- The ObservableObject and the ViewModelBase (Demos) 4m
- Introduction to ICommand and RelayCommand 2m
- Demonstrating the Commands 4m
- RelayCommand Demo 2m
- RelayCommand Slides 3m
- The Messenger, Receiving and Sending Messages 5m
- Messenger Advanced Options 4m
- Messenger Demos 5m
- Dispatching to the UI Thread With the DispatcherHelper 4m
- DispatcherHelper Sensor Demo (Windows Phone) 4m
- DispatcherHelper WebRequest Samples (WPF and SL) 3m
- Summary 1m
- Introduction 1m
- Setting the DataContext 5m
- Binding to a ViewModel (Demos) 7m
- Why an Extras Assembly? 1m
- Introducing Dependency Injection and Inversion of Control 3m
- Registering Classes with SimpleIoc 4m
- Creating and Getting Instances from SimpleIoc 3m
- Unregistering Classes from SimpleIoc 2m
- A Typical Scenario with SimpleIoc 1m
- SimpleIoc's Utility Methods and Properties 2m
- The ServiceLocation Assembly and SimpleIoc 2m
- SimpleIoc Demos 3m
- Introduction to Behaviors 4m
- Introduction to EventToCommand 3m
- EventToCommand Demo 1: Handling MouseEnter Event 1m
- EventToCommand Demo 2: Moving a Template to a ResourceDictionary 5m
- EventToCommand Demo 3: DataTrigger and EventToCommand 3m
- EventToCommand Demo 4: EventArgsConverter 3m
- EventToCommand vs. InvokeCommandAction 1m
- Summary 2m
- Introduction 2m
- Using the Assemblies From Nuget 3m
- A Quick Nuget Demo 2m
- Libraries Only vs. Full 2m
- Adding MVVM Light to an App With Nuget (Demo) 3m
- Installing the Whole Package in Visual Studio 4m
- Introducing the Code Snippets 2m
- The "INPC" Code Snippets Demo 5m
- The "RELAY" Code Snippets Demo 4m
- 'The "PROPDP" and "PROPA" Snippets Demo 3m
- Introduction and Demo of the Standard Project Template 4m
- The Windows 8.1 Project Template 6m
- New View, New ViewModel and MVVMLOCATORPROPERTY Snippet 2m
- Summary 2m
- Introduction; Plug-Ins: Introducing the Interfaces 4m
- Plug-Ins: Preparing the View 4m
- Plug-Ins: Databinding and Commanding 6m
- Plug-Ins: Sending a Message to the Plug-Ins 5m
- Plug-Ins: Using a Dataservice Inside the Plug-In 3m
- Plug-Ins: Building a Second Plug-In 3m
- Expandable List: Preparing the Infrastructure 5m
- Expandable List: Creating the UI and Testing 5m
- Unit Test: Testing the SelectableViewModel's Expansion 3m
- Unit Test: Testing the SelectableViewModel's Collapsing 3m
- Unit Test: Creating and Using Test Services 5m
- Unit Test: Testing the Navigation and the PropertyChanged 3m
- Summary and Conclusion 5m