NAutomation.DarkUI.Controls
1.5.0
dotnet add package NAutomation.DarkUI.Controls --version 1.5.0
NuGet\Install-Package NAutomation.DarkUI.Controls -Version 1.5.0
<PackageReference Include="NAutomation.DarkUI.Controls" Version="1.5.0" />
<PackageVersion Include="NAutomation.DarkUI.Controls" Version="1.5.0" />
<PackageReference Include="NAutomation.DarkUI.Controls" />
paket add NAutomation.DarkUI.Controls --version 1.5.0
#r "nuget: NAutomation.DarkUI.Controls, 1.5.0"
#:package NAutomation.DarkUI.Controls@1.5.0
#addin nuget:?package=NAutomation.DarkUI.Controls&version=1.5.0
#tool nuget:?package=NAutomation.DarkUI.Controls&version=1.5.0
NAutomation Dark UI Controls
Reusable dark-theme Windows Forms controls for industrial automation and HMI applications.
Requirements
- Windows Forms
- .NET Framework 4.7.2 or a compatible later .NET Framework version
Install
Install-Package NAutomation.DarkUI.Controls
Or with the .NET CLI:
dotnet add package NAutomation.DarkUI.Controls
After installation, build the consuming WinForms project. Public controls in the
NAutomation.Controls namespace can be used from code and added to the Visual Studio Toolbox.
using NAutomation.Controls;
var status = new DarkLedIndicator
{
Text = "Machine Ready",
IsOn = true
};
Runtime activation
This package includes a one-year evaluation period ending on 2027-10-01 23:59:59 UTC. After the evaluation period, controls reject mouse and keyboard input until a valid activation key is installed. The activation dialog opens automatically when a locked control is used.
Activation keys are signed, bound to one Windows machine and have their own expiration date. To activate from application code:
string message;
if (!ControlLicense.Activate(keyText, out message))
MessageBox.Show(message);
Use ControlLicense.MachineCode to obtain the request code for the target PC, or call
ControlLicense.ShowActivationDialog() to display the built-in activation window. The current
state and expiration are available from ControlLicense.Current.
Editable I/O status table
DarkIoStatusTable displays status LED/output switch inside the left side of the Address cell.
The visible columns are Address, ID, Name and Index. Editing is disabled by default; enable only
the columns that operators are allowed to change:
ioTable.EditableColumns = IoEditableColumns.Address |
IoEditableColumns.Name |
IoEditableColumns.Index;
ioTable.CellEditCommitted += (sender, e) =>
{
if (!TrySaveIoValue(e.Item, e.Column, e.NewValue))
{
e.Cancel = true;
e.ErrorMessage = "The value could not be saved.";
}
};
Double-click a permitted cell to edit it. Use the inline Save/Cancel buttons or press Enter/Escape.
While an editor is open, incoming UpdateItem calls continue updating every other cell and the
live status; only the cell being edited remains frozen. A cancelled save restores the previous
model value and leaves the editor open for correction.
Text alignment is configured independently with AddressTextAlignment, IdTextAlignment,
NameTextAlignment and IndexTextAlignment.
Source and issue tracking are available at NAutomationSuite.
Circular number indicator
DarkCircularNumber displays an integer inside a configurable circle. Its optional title can be
placed on the left, right, top or bottom.
var indicator = new DarkCircularNumber
{
Value = 12,
CircleSize = 72,
BorderThickness = 4,
BorderColor = Color.DodgerBlue,
TitleText = "STATION",
TitlePosition = CircularNumberTitlePosition.Bottom,
ShowTitle = true
};
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET Framework | net472 is compatible. net48 was computed. net481 was computed. |
-
.NETFramework 4.7.2
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.5.0 | 73 | 10/3/2026 |
| 1.4.1 | 78 | 10/2/2026 |
| 1.4.0 | 75 | 10/1/2026 |
| 1.3.4 | 98 | 9/21/2026 |
| 1.3.3 | 100 | 9/15/2026 |
| 1.3.2 | 103 | 9/14/2026 |
| 1.3.1 | 107 | 8/28/2026 |
| 1.3.0 | 115 | 8/17/2026 |
| 1.2.2 | 117 | 8/17/2026 |
| 1.2.1 | 110 | 8/16/2026 |
| 1.1.0 | 120 | 8/16/2026 |
| 1.0.3 | 120 | 8/14/2026 |
| 1.0.2 | 116 | 8/13/2026 |
| 1.0.1 | 100 | 8/13/2026 |
| 1.0.0 | 115 | 8/12/2026 |
DarkIoStatusTable now embeds the live input LED/output switch inside the Address cell and uses four columns: Address, ID, Name, Index. Adds per-column text alignment and opt-in double-click editing with inline Save/Cancel, Enter/Escape shortcuts, validation through CellEditCommitted, and isolated live updates so only the active edit cell is frozen. Legacy StatusColumnWidth, StateColumnWidth, and StatusHeaderText remain as compatibility properties.