--- source_files: - Common/DTS.Common.Property/ViewModel/PropertyViewModel.cs generated_at: "2026-04-17T16:10:18.441707+00:00" model: "zai-org/GLM-5-FP8" schema_version: 1 sha256: "c44efa392e4e3d7a" --- # ViewModel ### Purpose This module provides `PropertyViewModel`, a view model for displaying and managing graph property views. It integrates with the Prism framework for event aggregation, region management, and interaction requests (notifications/confirmations). It acts as a bridge between property views and the broader application infrastructure. ### Public Interface - **`PropertyViewModel`** (class) - Inherits from: `BaseViewModel`, implements `IPropertyViewModel` **Constructor:** - **`PropertyViewModel(IPropertyView view, IRegionManager regionManager, IEventAggregator eventAggregator, IUnityContainer unityContainer)`** - Initializes the view model, sets up the view's DataContext, creates interaction requests, and subscribes to `RaiseNotification` events. **Properties:** - **`IPropertyView View { get; }`** - Gets the associated view instance. - **`InteractionRequest NotificationRequest { get; }`** - Interaction request for displaying notifications. - **`InteractionRequest ConfirmationRequest { get; }`** - Interaction request for displaying confirmations. - **`object Properties { get; set; }`** - Gets or sets the properties object. Raises `PropertyChanged` event when set. - **`string HeaderInfo { get; }`** - Returns the constant string "Graph Property". - **`bool IsBusy { get; set; }`** - Throws `NotImplementedException`