init
This commit is contained in:
89
docs/ai/Common/DTS.CommonCore/Interface.md
Normal file
89
docs/ai/Common/DTS.CommonCore/Interface.md
Normal file
@@ -0,0 +1,89 @@
|
||||
---
|
||||
source_files:
|
||||
- Common/DTS.CommonCore/Interface/ITabView.cs
|
||||
- Common/DTS.CommonCore/Interface/IMainView.cs
|
||||
- Common/DTS.CommonCore/Interface/IMenuView.cs
|
||||
- Common/DTS.CommonCore/Interface/IShellView.cs
|
||||
- Common/DTS.CommonCore/Interface/INavigationView.cs
|
||||
- Common/DTS.CommonCore/Interface/IViewerShellView.cs
|
||||
- Common/DTS.CommonCore/Interface/ITabViewModel.cs
|
||||
- Common/DTS.CommonCore/Interface/IMenuViewModel.cs
|
||||
- Common/DTS.CommonCore/Interface/INavigationViewModel.cs
|
||||
- Common/DTS.CommonCore/Interface/IPluginComponent.cs
|
||||
- Common/DTS.CommonCore/Interface/IShellViewModel.cs
|
||||
- Common/DTS.CommonCore/Interface/IViewerShellViewModel.cs
|
||||
- Common/DTS.CommonCore/Interface/IMainViewModel.cs
|
||||
- Common/DTS.CommonCore/Interface/IAssemblyInfo.cs
|
||||
- Common/DTS.CommonCore/Interface/IDataPROPage.cs
|
||||
generated_at: "2026-04-17T15:28:55.402889+00:00"
|
||||
model: "zai-org/GLM-5-FP8"
|
||||
schema_version: 1
|
||||
sha256: "a72604fcb2f400f1"
|
||||
---
|
||||
|
||||
# Documentation: DTS.Common.Interface
|
||||
|
||||
## 1. Purpose
|
||||
|
||||
This module defines the core view and view-model abstraction layer for a WPF-based application framework. It establishes contracts for UI components including shell views, navigation views, tab views, menu views, and main views, following a Model-View-ViewModel (MVVM) pattern. The module also provides plugin infrastructure via `IPluginComponent`, assembly metadata attributes for image and name registration, and a comprehensive `IDataPROPage` interface for implementing data-driven UI pages with navigation, validation, and lifecycle management capabilities.
|
||||
|
||||
---
|
||||
|
||||
## 2. Public Interface
|
||||
|
||||
### View Interfaces
|
||||
|
||||
#### `ITabView`
|
||||
```csharp
|
||||
public interface ITabView : IBaseView { }
|
||||
```
|
||||
Marker interface for tab views. Inherits from `IBaseView`.
|
||||
|
||||
#### `IMainView`
|
||||
```csharp
|
||||
public interface IMainView : IBaseView { }
|
||||
```
|
||||
Marker interface for main views. Inherits from `IBaseView`.
|
||||
|
||||
#### `IMenuView`
|
||||
```csharp
|
||||
public interface IMenuView : IBaseView { }
|
||||
```
|
||||
Marker interface for menu views. Inherits from `IBaseView`.
|
||||
|
||||
#### `INavigationView`
|
||||
```csharp
|
||||
public interface INavigationView : IBaseView { }
|
||||
```
|
||||
Marker interface for navigation views. Inherits from `IBaseView`.
|
||||
|
||||
#### `IViewerShellView`
|
||||
```csharp
|
||||
public interface IViewerShellView : IBaseView { }
|
||||
```
|
||||
Marker interface for viewer shell views. Inherits from `IBaseView`.
|
||||
|
||||
#### `IShellView`
|
||||
```csharp
|
||||
public interface IShellView : IBaseWindow { }
|
||||
```
|
||||
Marker interface for shell views. Inherits from `IBaseWindow` (not `IBaseView`).
|
||||
|
||||
---
|
||||
|
||||
### ViewModel Interfaces
|
||||
|
||||
#### `ITabViewModel`
|
||||
```csharp
|
||||
public interface ITabViewModel : IBaseViewModel
|
||||
{
|
||||
ITabView View { get; }
|
||||
}
|
||||
```
|
||||
ViewModel contract for tab components. Provides access to the associated `ITabView`.
|
||||
|
||||
#### `IMenuViewModel`
|
||||
```csharp
|
||||
public interface IMenuViewModel : IBaseViewModel
|
||||
{
|
||||
IMenuView View {
|
||||
Reference in New Issue
Block a user