Table of Contents

Namespace Blazing.Mvvm.Components

Namespaces

Blazing.Mvvm.Components.Routing
Blazing.Mvvm.Components.TwoWayBinding

Classes

EditContextObservableValidatorExtensions

Provides extension methods for Microsoft.AspNetCore.Components.Forms.EditContext to enable MVVM validation support for models that inherit from CommunityToolkit.Mvvm.ComponentModel.ObservableValidator.

MvvmComponentBase<TViewModel>

Provides a base Blazor component that resolves and manages a ViewModel of type TViewModel.

MvvmLayoutComponentBase<TViewModel>

A base class for components that represent a layout and resolves a ViewModel of type TViewModel.

MvvmNavigationManager

Manages navigation via ViewModel using the route cache, supporting both type-based and key-based navigation in Blazor MVVM applications.

MvvmObservableValidator

A Blazor component that adds validation support to an Microsoft.AspNetCore.Components.Forms.EditContext for models inheriting from CommunityToolkit.Mvvm.ComponentModel.ObservableValidator. Falls back to the default behaviour and uses the built-in Microsoft.AspNetCore.Components.Forms.DataAnnotationsValidator for models that do not inherit from CommunityToolkit.Mvvm.ComponentModel.ObservableValidator.

MvvmOwningComponentBase<TViewModel>

A base class for Blazor components that create a service provider scope and resolve a ViewModel of type TViewModel.

ViewModelKeyAttribute

Specifies a key for a ViewModel on a View component, enabling keyed navigation and route mapping in Blazor MVVM applications. This attribute should only be used on View components.

ViewModelRouteNotFoundException

Exception thrown when a ViewModel or key has no associated page route in the navigation cache.

Interfaces

IMvvmNavigationManager

Provides an abstraction for querying and managing navigation via ViewModel (class/interface) in Blazor MVVM applications. Supports navigation by ViewModel type or key, with options for force load, history replacement, and custom browser navigation options.

IParameterResolver

Defines a mechanism for resolving and setting parameters on a target View and its ViewModel in a Blazor MVVM application.

IView

Represents a View in the MVVM pattern. This interface is used as a marker for Blazor components or pages that act as Views and participate in MVVM navigation and lifecycle management.

IView<TViewModel>

Represents a generic View in the MVVM pattern. Used to differentiate the View (such as a Blazor Page or Component) from its ViewModel for MvvmNavigationManager auto-detection.