MASS4.Attributes 5.9.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package MASS4.Attributes --version 5.9.0
                    
NuGet\Install-Package MASS4.Attributes -Version 5.9.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="MASS4.Attributes" Version="5.9.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="MASS4.Attributes" Version="5.9.0" />
                    
Directory.Packages.props
<PackageReference Include="MASS4.Attributes" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add MASS4.Attributes --version 5.9.0
                    
#r "nuget: MASS4.Attributes, 5.9.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package MASS4.Attributes@5.9.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=MASS4.Attributes&version=5.9.0
                    
Install as a Cake Addin
#tool nuget:?package=MASS4.Attributes&version=5.9.0
                    
Install as a Cake Tool

MASS4.Attributes

Shared metadata for forms, editor tools, stable type identity and service discovery. Consumers implement the behavior; this library references neither Turian, Gaya nor a GUI toolkit.

Autoformers builds editable forms from these attributes. Engine-specific component, asset and serialization rules live in Turian.Engine.Attributes.

Form attributes

Use using MASS4.Attributes;. Presentation is implemented by Autoformers.Excalibur; the attributes themselves contain only metadata.

Attribute Purpose
[Show], [Hide] Include a nonpublic field/property or exclude a member from the form.
[SetOrder(priority)] Order members; lower priorities appear first.
[ReadOnly] Display a member without allowing edits.
[Range(min, max)] Constrain the numeric editor.
[Required], [Required("Message")] Display a missing-value message without blocking writes.
[Title("Heading", "Subtitle")] Add a heading above a field.
[Tooltip("Help")] Add hover help.
[HideLabel] Give the editor the full row width.
[GuiColor("#RRGGBB")] Tint the controls and nested content; float channel constructors are also available.
[Button] Expose a public parameterless method as a form action.
[TextArea(minLines, maxLines)] Edit text in a growing multiline box, then scroll.
[ListDrawerSettings(...)] Configure collection paging, drag reordering and index labels.
[EnumLabel("Label")] Override an enum member's display name.
[EnumButtons] Display an enum field/property as one horizontal button group; flags toggle independently.
[EnumPaging] Add previous/next controls to the searchable enum dropdown.

Enum fields use searchable dropdowns by default; [Flags] is the standard .NET attribute that enables multiple selection. Selecting zero clears a flag value, while paging replaces its full value. [EnumButtons] takes precedence over [EnumPaging] if both are present. Labels use member names unless overridden; enum aliases share one numeric choice. Enum member visibility, icons and obsolete diagnostics are not currently implemented. See the enum examples.

Host metadata

These attributes expose information for application consumers. Autoformers retains member metadata, but a host must implement behavior beyond the form attributes above.

Attribute Purpose
[Expand(defaultExpanded)] Request an initial expanded state.
[NumericUpDown] Request numeric increment/decrement controls.
[CustomEditor(typeof(Editor))], [DefaultEditor] Declare editor selection metadata.
[EditorSetting("Path", ...)] Describe a settings page or option.
[MenuItem("Path")], [Panel("Name")] Describe commands and dock panels.
[DefaultOption] Mark a fallback importer.
[TypeId("guid")] Declare a stable type identity for serialization consumers.
[InternalService(...)] Declare a service type and InternalServiceLifetime.
[SuppressPrivate] Prevent an attribute from implicitly exposing nonpublic members.

For direct GUI widgets and custom layer-mask drawers, see the short Turian guide.

Product Compatible and additional computed target framework versions.
.NET 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net10.0

    • No dependencies.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on MASS4.Attributes:

Package Downloads
MASS4.Autoformers

A GUI-free form model: reflects plain C# objects into sections of editable fields, collections and actions, driven by MASS4.Attributes. Persistence, null rules and failure reporting are supplied by the consumer.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
6.0.0 166 10/10/2026
5.9.0 147 10/6/2026
5.8.0 119 10/5/2026
5.7.0 226 10/3/2026
5.6.1 161 10/2/2026
5.6.0 87 10/2/2026