AutoSettingUI.Extension.Shared
1.3.1
See the version list below for details.
dotnet add package AutoSettingUI.Extension.Shared --version 1.3.1
NuGet\Install-Package AutoSettingUI.Extension.Shared -Version 1.3.1
<PackageReference Include="AutoSettingUI.Extension.Shared" Version="1.3.1" />
<PackageVersion Include="AutoSettingUI.Extension.Shared" Version="1.3.1" />
<PackageReference Include="AutoSettingUI.Extension.Shared" />
paket add AutoSettingUI.Extension.Shared --version 1.3.1
#r "nuget: AutoSettingUI.Extension.Shared, 1.3.1"
#:package AutoSettingUI.Extension.Shared@1.3.1
#addin nuget:?package=AutoSettingUI.Extension.Shared&version=1.3.1
#tool nuget:?package=AutoSettingUI.Extension.Shared&version=1.3.1
AutoSettingUI.Extension.Shared
Shared utilities and helpers for AutoSettingUI framework extensions. This package contains common code used by all UI framework implementations (Avalonia, Ursa, WPF).
Installation
<PackageReference Include="AutoSettingUI.Extension.Shared" Version="1.0.0" />
Note: This package is typically installed automatically as a dependency of the framework-specific packages.
Features
ValidationHelper
Provides unified validation logic for property values:
using AutoSettingUI.Extension.Shared;
// Validate a property value
bool isValid = ValidationHelper.ValidateValue(propertyInfo, value, target, out string? errorMessage);
Supported validations:
- Required field validation
- String length validation (MinLength/MaxLength)
- Pattern matching (Regex)
- Numeric range validation (MinValue/MaxValue)
- Custom validation method invocation
ExtendedControlHelper
Simplifies creating controls from ControlBindingAttribute:
using AutoSettingUI.Extension.Shared;
// Create a control from attribute
var control = ExtendedControlHelper.CreateControl(attribute, propertyType);
Features:
- Factory method invocation (static and instance methods)
- Control instantiation via reflection
- Binding property resolution
ControlFactoryBase
Base class for control factories providing common functionality:
public class MyControlFactory : ControlFactoryBase
{
// Inherits:
// - Property value access via IPropertyValueAccessor
// - Dynamic read-only state evaluation
// - CanExecute delegate evaluation
// - Type resolution from name strings
}
Usage
This package is primarily used internally by the framework extensions. If you're creating a custom extension, you can reference it directly:
using AutoSettingUI.Extension.Shared;
public class MyCustomPanel
{
protected bool ValidateProperty(PropertyInfo prop, object? value, object target)
{
return ValidationHelper.ValidateValue(prop, value, target, out _);
}
protected object? CreateExtendedControl(ControlBindingAttribute attr, Type propertyType)
{
return ExtendedControlHelper.CreateControl(attr, propertyType);
}
}
Related Packages
- AutoSettingUI.Core - Core attributes and interfaces
- AutoSettingUI.Generator - Roslyn source generator
- AutoSettingUI.Avalonia - Avalonia UI panel
- AutoSettingUI.Ursa - Ursa-themed Avalonia panel
- AutoSettingUI.WPF - WPF panel
Documentation
License
MIT
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- AutoSettingUI.Core (>= 1.3.1)
-
net8.0
- AutoSettingUI.Core (>= 1.3.1)
-
net9.0
- AutoSettingUI.Core (>= 1.3.1)
NuGet packages (3)
Showing the top 3 NuGet packages that depend on AutoSettingUI.Extension.Shared:
| Package | Downloads |
|---|---|
|
AutoSettingUI.Ursa
Ursa UI implementation for AutoSettingUI - Declarative settings UI controls for Ursa (Avalonia) |
|
|
AutoSettingUI.WPF
WPF UI implementation for AutoSettingUI - Declarative settings UI controls for WPF |
|
|
AutoSettingUI.Avalonia
Avalonia UI implementation for AutoSettingUI - Declarative settings UI controls for Avalonia |
GitHub repositories
This package is not used by any popular GitHub repositories.