WinForms.FC_UI
3.1.5
dotnet add package WinForms.FC_UI --version 3.1.5
NuGet\Install-Package WinForms.FC_UI -Version 3.1.5
<PackageReference Include="WinForms.FC_UI" Version="3.1.5" />
<PackageVersion Include="WinForms.FC_UI" Version="3.1.5" />
<PackageReference Include="WinForms.FC_UI" />
paket add WinForms.FC_UI --version 3.1.5
#r "nuget: WinForms.FC_UI, 3.1.5"
#:package WinForms.FC_UI@3.1.5
#addin nuget:?package=WinForms.FC_UI&version=3.1.5
#tool nuget:?package=WinForms.FC_UI&version=3.1.5
๐ WinForms.FC_UI
A custom WinForms UI control library with rich styling, RGB effects, gradients, lighting, and rounding.
๐ Table of Contents
- ๐ About
- โจ Features
- ๐ Getting Started
- ๐ก Usage
- ๐ API Reference
- ๐งช Running Tests
- ๐๏ธ Project Structure
- ๐ Demos
- ๐ค Contributing
- ๐ฎ Roadmap
- ๐ License
๐ About
WinForms.FC_UI is a custom UI control library for Windows Forms applications. It provides a set of fully customizable controls โ buttons, checkboxes, radio buttons, switches, progress bars, scroll bars, text boxes, group boxes, and a color picker โ all built with GDI+ custom rendering.
Each control supports fine-grained visual customization including background color, border, gradient fills, lighting/shadow effects, corner rounding, click animations, and an animated RGB color-cycling mode.

โจ Features
| Characteristic | Value |
|---|---|
| Created | 2020 |
| Framework | .NET 10 (Windows Forms) |
| Language | C# |
| Controls | 10 custom controls + 1 component |
| Control | Effects | RGB Mode | Random Style | Gradient BG | Gradient Border | Lighting | Rounding | Resize |
|---|---|---|---|---|---|---|---|---|
| FButton | โ | โ | โ | โ | โ | โ | โ | โ |
| FCheckBox | โ | โ | โ | โ | โ | โ | โ | โ |
| FRadioButton | โ | โ | โ | โ | โ | โ | โ | โ |
| FSwitchBox | โ | โ | โ | โ | โ | โ | โ | โ |
| FProgressBar | โ | โ | โ | โ | โ | โ | โ | โ |
| FScrollBar | โ | โ | โ | โ | โ | โ | โ | โ |
| FRichTextBox | โ | โ | โ | โ | โ | โ | โ | โ |
| FTextBox | โ | โ | โ | โ | โ | โ | โ | โ |
| FGroupBox | โ | โ | โ | โ | โ | โ | โ | โ |
| ZColorPicker | โ | โ | โ | โ | โ | โ | โ | โ |
Key capabilities:
- Fine-grained styling โ background, border, effects, gradient, lighting, rounding, smoothing mode, font, and more
- RGB mode โ animated HSV color cycling across controls
- Random style โ randomly generates control appearance parameters
- Click effects โ circle ripple and white overlay animations (FButton, FCheckBox, FRadioButton)
- Gradient fills โ linear gradients for background and border
- Lighting/shadow โ blurred shadow effect around controls
- Corner rounding โ percentage-based corner radius for any control
- Global RGB component โ synchronizes RGB animation across all FC_UI controls
๐ Getting Started
๐ Prerequisites
- SDK: .NET 10 SDK 10.0.300 or later
- Language: C# 14
- Platform: Windows (WinForms)
The repository includes global.json and NuGet lock files so local restore uses the same SDK feature band and dependency graph as CI.
๐ฆ Installation
NuGet Package Manager
dotnet add package WinForms.FC_UI
Or via the Package Manager Console in Visual Studio:
Install-Package WinForms.FC_UI
Or add directly to your .csproj:
<PackageReference Include="WinForms.FC_UI" Version="3.1.5" />
๐ก Usage
using FC_UI.Controls;
// Create and configure an FButton
var button = new FButton
{
ControlStyle = FControlBase.ControlStyleMode.Default,
DisplayText = "Click me",
BackgroundColor = Color.FromArgb(37, 52, 68),
BorderColor = Color.FromArgb(29, 200, 238),
Rounding = true,
CornerRadius = 70,
EnableClickEffect = true,
ShowBorder = true,
BorderWidth = 4F
};
this.Controls.Add(button);
// Enable RGB mode
button.Rgb = true;
// Or use the Random style for a surprise
button.ControlStyle = FControlBase.ControlStyleMode.Random;
๐ See the full working demo in examples/WinForms.FC_UI.Example/.
๐ API Reference
Controls
| Control | Description |
|---|---|
FButton |
Customizable button with click effects, gradients, lighting, and RGB mode |
FCheckBox |
Checkbox with circle animation effects and gradient support |
FRadioButton |
Radio button with customizable checked indicator and effects |
FSwitchBox |
Toggle switch with smooth visual feedback |
FProgressBar |
Progress indicator with gradient fill and text overlay |
FScrollBar |
Horizontal/vertical scrollbar with thumb customization |
FRichTextBox |
Rich text editor with styled border and lighting |
FTextBox |
Text input with password masking and styled border |
FGroupBox |
Container with styled frame and gradient background |
ZColorPicker |
HSV color wheel picker with brightness slider |
Common Properties
| Property | Type | Description |
|---|---|---|
ShowBackground |
bool |
Enable/disable background fill |
BackgroundColor |
Color |
Background color |
Rounding |
bool |
Enable/disable corner rounding |
CornerRadius |
int |
Rounding percentage (0โ100) |
Rgb |
bool |
Enable/disable RGB color cycling mode |
ShowBorder |
bool |
Enable/disable border |
BorderWidth |
float |
Border width |
BorderColor |
Color |
Border color |
Lighting |
bool |
Enable/disable lighting/shadow effect |
LightingColor |
Color |
Lighting/shadow color |
UseGradientBackground |
bool |
Enable/disable background gradient |
UseGradientBorder |
bool |
Enable/disable border gradient |
SmoothingMode |
SmoothingMode |
Graphics smoothing mode |
TextRenderingHint |
TextRenderingHint |
Text rendering quality |
Components
| Component | Description |
|---|---|
FGlobal_RGB |
Enables synchronized global RGB mode for all FC_UI controls |
๐งช Running Tests
dotnet restore WinForms.FC_UI.slnx --locked-mode
dotnet build WinForms.FC_UI.slnx --no-restore --configuration Release
dotnet test WinForms.FC_UI.slnx --no-build --configuration Release --verbosity normal
Tests are located in tests/WinForms.FC_UI.Tests/ and use xUnit. They cover engine utilities (HSV-to-RGB conversion, rounded rectangle generation, random helpers), control property validation (defaults, bounds checking, events), and basic render smoke checks.
๐๏ธ Project Structure
WinForms.FC_UI/
โโโ ๐ src/
โ โโโ ๐ Components/
โ โ โโโ ๐ FGlobal_RGB.cs # Global RGB component
โ โโโ ๐ Controls/
โ โ โโโ ๐ FButton.cs # Button control
โ โ โโโ ๐ FCheckBox.cs # CheckBox control
โ โ โโโ ๐ FRadioButton.cs # RadioButton control
โ โ โโโ ๐ FSwitchBox.cs # SwitchBox control
โ โ โโโ ๐ FProgressBar.cs # ProgressBar control
โ โ โโโ ๐ FScrollBar.cs # ScrollBar control
โ โ โโโ ๐ FRichTextBox.cs # RichTextBox control
โ โ โโโ ๐ FTextBox.cs # TextBox control
โ โ โโโ ๐ FGroupBox.cs # GroupBox control
โ โ โโโ ๐ ZColorPicker.cs # Color picker control
โ โโโ ๐ Engines/
โ โ โโโ ๐ DrawEngine.cs # Drawing utilities (rounded rects, HSV, shadow)
โ โ โโโ ๐ HelpEngine.cs # Helper utilities (fonts, graphics, random)
โ โโโ ๐ WinForms.FC_UI.csproj
โโโ ๐ tests/
โ โโโ ๐ WinForms.FC_UI.Tests/ # xUnit tests
โ โโโ ๐ DrawEngineTests.cs
โ โโโ ๐ HelpEngineTests.cs
โ โโโ ๐ Controls/ # Control tests
โ โโโ ๐ Components/ # Component tests
โ โโโ ๐ WinForms.FC_UI.Tests.csproj
โโโ ๐ examples/
โ โโโ ๐ WinForms.FC_UI.Example/ # Demo application
โ โโโ ๐ Program.cs
โ โโโ ๐ WinForms.FC_UI.Example.csproj
โโโ ๐ resources/ # Logo, demo GIFs
โโโ ๐ Directory.Build.props # Shared build settings
โโโ ๐ Directory.Packages.props # Central package management
โโโ ๐ WinForms.FC_UI.slnx # Solution file
โโโ ๐ LICENSE
โโโ ๐ README.md
๐ Demos
Default Style

RGB Mode (Global_RGB component)

Random Style

๐ค Contributing
Contributions are welcome! To get started:
- ๐ด Fork the repository
- ๐ฟ Create a feature branch (
git checkout -b feature/my-feature) - โ๏ธ Make your changes and add tests
- โ
Run
dotnet testto verify everything passes - ๐ฌ Open a Pull Request
๐ฎ Roadmap
Things to add or fix in future releases:
- FButton โ Add image/icon support so a picture can be placed inside the button.
- ZColorPicker โ Finish refactoring to remove the internal
PictureBoxdependency.
๐ License
This project is licensed under the MIT License.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0-windows7.0 is compatible. |
-
net10.0-windows7.0
- 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.