BazthalLib 1.2.7.2

dotnet add package BazthalLib --version 1.2.7.2
                    
NuGet\Install-Package BazthalLib -Version 1.2.7.2
                    
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="BazthalLib" Version="1.2.7.2" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="BazthalLib" Version="1.2.7.2" />
                    
Directory.Packages.props
<PackageReference Include="BazthalLib" />
                    
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 BazthalLib --version 1.2.7.2
                    
#r "nuget: BazthalLib, 1.2.7.2"
                    
#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 BazthalLib@1.2.7.2
                    
#: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=BazthalLib&version=1.2.7.2
                    
Install as a Cake Addin
#tool nuget:?package=BazthalLib&version=1.2.7.2
                    
Install as a Cake Tool

BazthalLib UI Library - README

NuGet Downloads License MP3 Player Sample

BazthalLib is a custom C# UI framework designed for themable Windows Forms apps.
All components follow a unified, configurable color system with reusable styling. Library was built alongside projects using it so everything was added to fill a need

Key Features

Unified Theme Engine

  • Centralized ThemeColors.cs defines all color roles.
  • Live propagation of theme updates to all registered controls.
  • JSON support via ThemeColorsJsonConverter.cs for saving/loading themes.

Themable Controls

A suite of UI elements with built-in theme awareness:

Category Included Controls
Buttons ThemableButton, ThemableToolStripButton, ThemableRadioButton
Inputs ThemableTextBox, ThemableComboBox, ThemableCheckBox, ThemableNumericUpDown
Lists ThemableListBox, ThemableOptionListBox
Panels & Grouping ThemablePanel, ThemableGroupBox, ThemableTabControlBase, ThemableTabControlHeader
ToolStrips ThemableToolStrip, ThemableStatusStrip, ThemableToolStripTextBox, ThemableToolStripProgressBar, etc.
Misc ThemableProgressBar, ThemableTrackBar, ThemableColorPickerDialog, ThemableProcessingDialog, ThemableMessageBox

All components implement or inherit from IThemableControl.

Tinted Image Rendering

  • TintedImageRenderer.cs enables dynamic icon tinting based on accent or foreground color.
  • Integrates with buttons for adaptive shape, focus borders, and scaling tied to image layout.

Utility Classes

  • DebugUtils.cs Debug logging utilities
  • MouseHook.cs Global mouse input handling
  • NativeMethods.cs P/Invoke support for Win32 APIs
  • EyedropperOverlay.cs Live screen color picker with multi-monitor support

Smart Design Patterns

  • NotifyingItemCollection.cs: A custom observable collection with change tracking
  • ThemeManager: Central orchestrator of theming logic and control registration

Ideal For

  • Custom-themed Windows Forms applications
  • Stream overlays, dashboards, and utilities
  • Apps needing runtime theme switching or user-defined color customization

Project Structure

Folder Description
Configuration Theme persistence and JSON handling
Controls All themable UI components
Events Custom event argument classes
Extensibility Custom converters and serialization helpers
Resources Assets for Color Picker and Theme Selector components
Systems File handling, execution, networking logic
UI Theming engine and rendering tools

Color Picker Preview

  • Compact and expanded versions of the built-in color picker
Compacted Expanded
Color Picker Dialog Color Picker Dialog - Expanded

Sample App: MP3PlayerV2

  • This MP3 player UI was built entirely with BazthalLib:
Light / Dark Theme HotPink Theme
Light / Dark Main HotPink
Settings Processing Dialog
Settings Loading
Product Compatible and additional computed target framework versions.
.NET net9.0-windows7.0 is compatible.  net10.0-windows was computed.  net10.0-windows7.0 is compatible. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

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.2.7.2 150 7/30/2026
1.2.7 135 6/22/2026
1.2.6 132 6/19/2026
1.2.5 147 6/17/2026
1.1.5 318 9/22/2025
1.1.4 255 9/11/2025
1.1.3 199 7/27/2025
1.1.2 631 7/22/2025
1.1.1 579 7/21/2025
1.0.0 411 7/20/2025