45 lines
2.4 KiB
Markdown
45 lines
2.4 KiB
Markdown
|
|
---
|
||
|
|
source_files:
|
||
|
|
- Common/DTS.Common/Validators/SensitivityValidator.cs
|
||
|
|
- Common/DTS.Common/Validators/UARTBAUDRateValidator.cs
|
||
|
|
- Common/DTS.Common/Validators/CANArbBaseBitrateValidator.cs
|
||
|
|
generated_at: "2026-04-17T16:35:32.963513+00:00"
|
||
|
|
model: "zai-org/GLM-5-FP8"
|
||
|
|
schema_version: 1
|
||
|
|
sha256: "26f2d335021e8611"
|
||
|
|
---
|
||
|
|
|
||
|
|
# Documentation: DTS.Common.Validators
|
||
|
|
|
||
|
|
## 1. Purpose
|
||
|
|
|
||
|
|
This module provides WPF `ValidationRule` implementations for validating user input in the DTS application's UI layer. It contains three specialized validators: `SensitivityValidator` for ensuring numeric sensitivity values are non-zero, `UARTBAUDRateValidator` for validating UART baud rate configuration values against defined min/max bounds, and `CANArbBaseBitrateValidator` for validating CAN arbitration/base bitrate values. These validators are designed for use in WPF data binding scenarios where input validation is required before accepting user-provided string values.
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 2. Public Interface
|
||
|
|
|
||
|
|
### `SensitivityValidator`
|
||
|
|
**Inherits from:** `ValidationRule`
|
||
|
|
|
||
|
|
| Method | Signature | Description |
|
||
|
|
|--------|-----------|-------------|
|
||
|
|
| `Validate` | `public override ValidationResult Validate(object value, CultureInfo cultureInfo)` | Validates that the input is a parseable `double` and is not equal to zero. Returns `ValidationResult(false, StringResources.InvalidFormat)` if the value cannot be parsed as a double or is not a string. Returns `ValidationResult(false, StringResources.SensitivityCanNotBeZero)` if the parsed value equals `0D`. Returns `ValidationResult(true, null)` for valid non-zero numeric input. |
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
### `UARTBAUDRateValidator`
|
||
|
|
**Inherits from:** `ValidationRule`
|
||
|
|
|
||
|
|
| Method | Signature | Description |
|
||
|
|
|--------|-----------|-------------|
|
||
|
|
| `Validate` | `public override ValidationResult Validate(object value, CultureInfo cultureInfo)` | Validates that the input is a parseable `long` within the UART baud rate range. Returns `ValidationResult(false, StringResources.InvalidFormat)` if the value cannot be parsed as a long or is not a string. Returns `ValidationResult(false, ...)` with min/max error messages if the value falls outside `Constant.EmbeddedSensors.BAUD_RATE_MIN` or `Constant.EmbeddedSensors.BAUD_RATE_MAX`. Returns `ValidationResult(true, null)` for valid input within bounds. |
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
### `CANArbBaseBitrateValidator`
|
||
|
|
**Inherits from:** `ValidationRule`
|
||
|
|
|
||
|
|
| Method | Signature | Description |
|
||
|
|
|--------|-----------|-------------|
|
||
|
|
| `Validate` | `public override
|