--- source_files: - DTS Viewer/DTS.Viewer/View/DockPanelVertical/ViewModel/DockPanelVerticalViewModel.cs generated_at: "2026-04-17T16:13:30.756128+00:00" model: "zai-org/GLM-5-FP8" schema_version: 1 sha256: "af40e1e596555938" --- # ViewModel ### Purpose The `NavigationViewModel` class serves as the ViewModel component for the navigation region in a Prism-based WPF application. It manages the `ContextNavigationRegion` content area, handles notification display via event aggregation, and coordinates with a parent `IShellViewModel`. This module exists to decouple navigation logic from the view while providing notification capabilities through the Prism InteractionRequest pattern. ### Public Interface **Constructor** - `NavigationViewModel(INavigationView view, IRegionManager regionManager, IEventAggregator eventAggregator, IUnityContainer unityContainer)` — Initializes the view model, sets the view's DataContext, creates `NotificationRequest` and `ConfirmationRequest` interaction requests, and subscribes to the `RaiseNotification` event. **Properties** - `INavigationView NavigationView { get; }` — Returns the associated navigation view instance. - `InteractionRequest NotificationRequest { get; }` — Interaction request for displaying notifications. - `InteractionRequest ConfirmationRequest { get; }` — Interaction request for displaying confirmations. - `object ContextNavigationRegion { get; set; }` — Gets or sets the content of the `NavigationRegion` from the underlying `NavigationView`. Raises `OnPropertyChanged` on set. - `string HeaderInfo { get; }` — Always returns `"NavigationRegion"`. - `bool IsBusy { get; set; }` — Throws `NotImplementedException` on both getter and setter. - `bool IsDirty { get;