Files

72 lines
2.6 KiB
Markdown
Raw Permalink Normal View History

2026-04-17 14:55:32 -04:00
---
source_files:
- DTS Viewer/DTS.Viewer/Modules/Main/View/MainView.xaml.cs
- DTS Viewer/DTS.Viewer/Modules/Main/View/ViewerShellView.xaml.cs
- DTS Viewer/DTS.Viewer/Modules/Main/View/MainViewLite.xaml.cs
- DTS Viewer/DTS.Viewer/Modules/Main/View/ExportMainView.xaml.cs
- DTS Viewer/DTS.Viewer/Modules/Main/View/ViewerMainView.xaml.cs
- DTS Viewer/DTS.Viewer/Modules/Main/View/ExportMainViewGrid.xaml.cs
- DTS Viewer/DTS.Viewer/Modules/Main/View/ViewerMainViewGrid.xaml.cs
generated_at: "2026-04-17T15:50:13.365274+00:00"
model: "zai-org/GLM-5-FP8"
schema_version: 1
sha256: "5917449308f31e2b"
---
# Documentation: DTS.Viewer Main View Components
## 1. Purpose
This module contains the main view components for the DTS Viewer application, implementing a WPF-based visualization and export system. It provides multiple view variants (standard, lite, export, and viewer modes) that serve as UI shells for chart/graph visualization and PDF export functionality. The views follow a code-behind pattern with XAML partial classes, integrating with Prism's event aggregation system for loosely-coupled communication between components.
---
## 2. Public Interface
### MainView
**Signature:** `public partial class MainView : IMainView`
**Constructor:**
- `MainView()` — Initializes the component via `InitializeComponent()`.
**Behavior:** Minimal code-behind for the main window view. Serves as a shell container; actual behavior is defined in XAML and associated ViewModel.
---
### ViewerShellView
**Signature:** `public partial class ViewerShellView : IViewerShellView`
**Constructor:**
- `ViewerShellView()` — Initializes the component via `InitializeComponent()`.
**Behavior:** Shell view for the viewer mode. Minimal code-behind; behavior defined in XAML.
---
### MainViewLite
**Signature:** `public partial class MainViewLite : IMainViewerView`
**Constructor:**
- `MainViewLite()` — Initializes the component via `InitializeComponent()`.
**Behavior:** Lightweight variant of the main viewer view. Inherits from `UserControl`.
---
### ExportMainView
**Signature:** `public partial class ExportMainView : IExportMainView`
**Constructor:**
- `ExportMainView()` — Initializes the component via `InitializeComponent()`.
**Behavior:** View for export mode. Minimal code-behind.
---
### ViewerMainView
**Signature:** `public partial class ViewerMainView : IViewerMainView`
**Constructor:**
- `ViewerMainView()` — Initializes the component via `InitializeComponent()`.
**Behavior:** Main view for viewer mode. Contains commented-out code for AvalonDock layout serialization/deserialization (referencing `DockManager`, `XmlLayoutSerializer`,