Atc.Wpf.Controls 2.0.665

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

ATC.Net WPF

A comprehensive set of modern, enterprise-ready WPF libraries for building professional desktop applications with the MVVM design pattern. This framework provides a rich collection of reusable controls, theming support, font icons, and MVVM infrastructure to accelerate WPF application development.

✨ Key Features

  • 🎨 Rich Control Library - 25+ labeled controls, color pickers, selectors, and specialized input controls
  • 🌓 Light/Dark Theming - Built-in theme support for all controls with easy customization
  • 🎯 MVVM Ready - Complete MVVM infrastructure with observable properties and relay commands
  • 🔤 Font Icon Support - Render SVG and image resources based on fonts
  • Smart Validation - Deferred validation pattern for better user experience
  • 📐 Advanced Layouts - GridEx, StaggeredPanel, UniformSpacingPanel and more
  • 🌍 Localization - Built-in translation and localization support
  • 🎭 Value Converters - Extensive collection of XAML value converters

Requirements

NuGet Packages Provided in this Repository

Nuget package Description Dependencies
NuGet Version Base Controls, ValueConverters, Extensions etc. <ul><li>Atc</li><li>Atc.XamlToolkit</li><li>Atc.XamlToolkit.Wpf</li></ul>
NuGet Version Miscellaneous UI Controls <ul><li>Atc.Wpf</li><li>Atc.Wpf.FontIcons</li><li>Atc.Wpf.Theming</li><li>Atc.XamlToolkit</li><li>Atc.XamlToolkit.Wpf</li></ul>
NuGet Version Controls for creating WPF sample apps <ul><li>Atc.Wpf</li><li>Atc.Wpf.Theming</li><li>Atc.Wpf.Controls</li></ul>
NuGet Version Render Svg and Img resources based on fonts <ul><li>Atc.Wpf</li></ul>
NuGet Version Theming for Light & Dark mode for WPF base controls <ul><li>Atc.Wpf</li><li>Atc.XamlToolkit</li><li>Atc.XamlToolkit.Wpf</li></ul>

🔎 Demonstration Application

The demonstration application, Atc.Wpf.Sample, functions as a control explorer. It provides quick visualization of a given control, along with options for copying and pasting the XAML markup and/or the C# code for how to use it.

🎈 Playground and Viewer for a Given Control or Functionality

The following example is taken from the ReplayCommandAsync which illustrates its usage:

  • The Sample tab shows how to use the control or feature.
  • The XAML tab displays the corresponding XAML markup.
  • The CodeBehind tab reveals the underlying code-behind.
  • The ViewModel tab displays the associated ViewModel, if used.
  • The Readme tab displays the associated [control]_Readme.md, if exist.
Sample Img XAML Img
CodeBehind Img ViewModel Img

🔦 Initial glimpse at the demonstration application

Light-Mode Dark-Mode
Wpf - AutoGrid Img Wpf - AutoGrid Img
Wpf.Controls - Label MIX Img Wpf.Controls - Label MIX Img
Wpf.Theming - ImageButton Img Wpf.Theming - ImageButton Img
Wpf.FontIcons - Viewer Img Wpf.FontIcons - Viewer Img

🚀 Quick Start Guide

Installation

Add the NuGet packages to your .csproj file:

<ItemGroup>
  <PackageReference Include="Atc.Wpf" Version="2.*" />
  <PackageReference Include="Atc.Wpf.Controls" Version="2.*" />
  <PackageReference Include="Atc.Wpf.FontIcons" Version="2.*" />
  <PackageReference Include="Atc.Wpf.Theming" Version="2.*" />
</ItemGroup>

Configuration

1. Update App.xaml

Add the required resource dictionaries to enable theming and control styles:

<Application
    x:Class="YourApp.App"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:atc="https://github.com/atc-net/atc-wpf/tree/main/schemas">
    <Application.Resources>
        <ResourceDictionary>
            <ResourceDictionary.MergedDictionaries>
                
                <ResourceDictionary Source="pack://application:,,,/Atc.Wpf.Theming;component/Styles/Default.xaml" />

                
                <ResourceDictionary Source="pack://application:,,,/Atc.Wpf.Controls;component/Styles/Controls.xaml" />
            </ResourceDictionary.MergedDictionaries>
        </ResourceDictionary>
    </Application.Resources>
</Application>

2. Use Controls in XAML

Now you can use all controls with full theming support:

<Window
    xmlns:atc="https://github.com/atc-net/atc-wpf/tree/main/schemas"
    ...>

    
    <atc:LabelTextBox
        LabelText="User Name"
        Text="{Binding UserName}"
        IsMandatory="True" />

    
    <atc:LabelEndpointBox
        LabelText="API Endpoint"
        NetworkProtocol="Https"
        Value="{Binding EndpointUri}" />

    
    <Button Content="Save" Command="{Binding SaveCommand}" />
    <TextBox Text="{Binding Notes}" />
</Window>

All standard WPF controls (Button, TextBox, ComboBox, etc.) are automatically styled with Light/Dark theme support.

🎯 Label Controls vs Base Controls

Understanding when to use each type of control:

Aspect Label Controls Base Controls
Label Integrated label with text No label (you provide your own)
Validation Built-in validation message display Validation logic only
Mandatory Asterisk indicator support Not applicable
Use Case Standard forms and dialogs Custom layouts and composite controls
Example <atc:LabelTextBox LabelText="Name" Text="{Binding Name}" /> <atc:IntegerBox Value="{Binding Count}" />

Quick Guideline:

  • Use Label Controls for standard forms where you want consistency and less markup
  • Use Base Controls when you need custom layouts or are building your own controls

💝 MVVM Made Easy

The Atc.Wpf package provides a complete MVVM infrastructure that makes it easy to separate UI and business logic using the MVVM pattern.

Key MVVM Features

  • Observable Properties - Automatic INotifyPropertyChanged implementation
  • Relay Commands - Simple command implementation with CanExecute support
  • Async Commands - Built-in support for async/await patterns
  • Source Generators - Automatic code generation for ViewModels and properties

Learn More

Quick MVVM Example

public partial class MainViewModel : ViewModelBase
{
    [ObservableProperty]
    private string userName = string.Empty;

    [ObservableProperty]
    private bool isEnabled = true;

    [RelayCommand(CanExecute = nameof(CanSave))]
    private async Task SaveAsync()
    {
        await SaveUserDataAsync(UserName);
    }

    private bool CanSave() => !string.IsNullOrEmpty(UserName);
}

📚 Comprehensive Documentation

Note: While this README provides an overview, the best way to explore all controls and components is to run the Atc.Wpf.Sample application, which includes interactive examples with XAML and code-behind for every control! �

💟 Atc.Wpf - Core WPF Library

The foundation library providing essential WPF controls, layouts, and utilities.

Layout Controls

Modern layout panels for advanced UI composition:

Media Controls

  • SvgImage - SVG image rendering control

Helpers & Utilities

  • PanelHelper - Helper methods for panel layout calculations

Additional Features

💟 Atc.Wpf.Controls - Rich Control Library

A comprehensive collection of specialized WPF controls for enterprise applications.

⭐ Label Controls (25+ Controls)

📖 Complete Label Controls Documentation

Labeled input controls with built-in validation, mandatory indicators, and consistent styling:

  • Text Input: LabelTextBox, LabelPasswordBox
  • Number Input: LabelIntegerBox, LabelDecimalBox, LabelIntegerXyBox, LabelDecimalXyBox, LabelPixelSizeBox
  • Date/Time: LabelDatePicker, LabelTimePicker, LabelDateTimePicker
  • Selection: LabelCheckBox, LabelComboBox, LabelToggleSwitch
  • Selectors: LabelAccentColorSelector, LabelCountrySelector, LabelFontFamilySelector, LabelLanguageSelector, LabelThemeSelector, LabelWellKnownColorSelector
  • Pickers: LabelColorPicker, LabelDirectoryPicker, LabelFilePicker
  • Network: LabelEndpointBox (protocol + host + port with validation)
  • Display: LabelContent, LabelTextInfo

All label controls support:

  • ✅ Deferred validation (shows errors only after user interaction)
  • ✅ Mandatory field indicators
  • ✅ Consistent styling and theming
  • ✅ MVVM-friendly data binding

⭐ Base Controls (14 Controls)

📖 Complete Base Controls Documentation

Unlabeled input controls that provide core functionality without the label wrapper:

  • Text Input: RichTextBoxEx
  • Number Input: IntegerBox, DecimalBox, IntegerXyBox, DecimalXyBox, PixelSizeBox
  • Time Selection: ClockPanelPicker
  • Toggle: ToggleSwitch
  • Pickers: ColorPicker, DirectoryPicker, FilePicker
  • Network: EndpointBox (protocol + host + port with validation)

Base controls are perfect for:

  • 🎯 Custom layouts where you position labels yourself
  • 🧩 Building composite controls
  • 📐 Situations where labels are not needed
  • 🔨 Creating your own labeled control wrappers

Color Controls

Additional Resources

💟 Atc.Wpf.FontIcons - Font-Based Icons

Render SVG and image resources using font-based icon systems for crisp, scalable icons.

Features

  • 🎨 Scalable vector icons
  • 🎯 Font-based rendering
  • 📦 Multiple icon font support
  • 🌈 Color and size customization

Resources

💟 Atc.Wpf.Theming - Light & Dark Mode

Complete theming infrastructure with Light and Dark mode support for all WPF controls.

Features

  • 🌓 Light/Dark theme switching
  • 🎨 Accent color customization
  • 🎯 Automatic control styling
  • 🔄 Runtime theme changes
  • 📱 Consistent visual design

Resources


🎯 Source Generators

Atc.Wpf includes powerful source generators to reduce boilerplate code:


🤝 Contributing

We welcome contributions! Please read our guidelines:

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

🙏 Acknowledgments

Built with ❤️ by the ATC.Net team and contributors.

Product Compatible and additional computed target framework versions.
.NET net9.0-windows7.0 is compatible.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on Atc.Wpf.Controls:

Package Downloads
Atc.Wpf.Controls.Sample

A base library for building Sample WPF application.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2.0.665 153 10/20/2025
2.0.664 178 10/6/2025
2.0.659 166 10/2/2025
2.0.657 301 9/15/2025
2.0.651 184 7/14/2025
2.0.647 305 5/13/2025
2.0.646 289 5/12/2025
2.0.642 194 5/7/2025
2.0.640 194 5/5/2025
2.0.638 195 5/4/2025
2.0.636 215 4/22/2025
2.0.631 225 4/10/2025
2.0.627 230 4/5/2025
2.0.626 142 4/5/2025
2.0.624 230 4/3/2025
2.0.621 232 4/2/2025
2.0.618 206 4/1/2025
2.0.605 202 3/26/2025
2.0.599 229 3/17/2025
2.0.597 214 3/17/2025
2.0.596 202 3/16/2025
2.0.595 193 3/16/2025
2.0.594 192 3/16/2025
2.0.593 186 3/16/2025
2.0.592 190 3/16/2025
2.0.582 237 2/19/2025
2.0.581 157 2/19/2025
2.0.580 180 2/19/2025
2.0.579 181 2/19/2025
2.0.578 169 2/18/2025
2.0.574 161 2/16/2025
2.0.569 149 2/16/2025
2.0.568 149 2/16/2025
2.0.565 155 2/15/2025
2.0.563 157 2/15/2025
2.0.562 170 2/12/2025
2.0.561 187 2/10/2025
2.0.547 170 2/9/2025
2.0.545 169 2/8/2025
2.0.534 182 2/8/2025
2.0.530 170 1/19/2025
2.0.524 203 6/13/2024
2.0.519 199 6/12/2024
2.0.517 187 6/11/2024
2.0.511 168 6/7/2024
2.0.505 289 4/26/2024
2.0.499 255 4/7/2024
2.0.495 194 3/26/2024
2.0.493 178 3/22/2024
2.0.491 168 3/21/2024
2.0.484 172 3/21/2024
2.0.480 184 3/18/2024
2.0.468 215 3/10/2024
2.0.449 200 3/4/2024
2.0.424 203 2/25/2024
2.0.419 200 2/22/2024
2.0.413 211 2/22/2024
2.0.408 179 2/22/2024
2.0.406 200 2/21/2024
2.0.403 174 2/18/2024
2.0.398 239 2/10/2024
2.0.396 183 2/10/2024
2.0.394 190 2/9/2024
2.0.392 207 2/9/2024
2.0.387 182 2/7/2024
2.0.385 213 1/27/2024
2.0.382 210 1/23/2024
2.0.379 268 1/3/2024
2.0.377 224 1/3/2024
2.0.361 221 12/17/2023
2.0.358 209 12/16/2023
2.0.344 198 12/13/2023
2.0.342 250 12/9/2023
2.0.337 220 12/3/2023
2.0.333 166 12/3/2023
2.0.331 206 11/30/2023
2.0.312 186 11/24/2023
2.0.308 196 11/24/2023
2.0.297 276 11/11/2023
2.0.290 181 11/8/2023
2.0.285 214 11/1/2023
2.0.280 197 10/25/2023
2.0.265 338 9/10/2023
2.0.260 262 8/9/2023
2.0.242 287 7/22/2023
2.0.195 276 7/4/2023
2.0.178 845 11/18/2022
2.0.176 426 11/16/2022
2.0.174 436 11/16/2022
2.0.168 536 11/13/2022
2.0.164 510 11/10/2022
2.0.162 463 11/8/2022
2.0.160 487 11/7/2022
2.0.128 614 10/17/2022
2.0.125 505 10/15/2022
2.0.119 503 10/14/2022
2.0.115 513 10/13/2022
2.0.107 495 10/13/2022
2.0.104 546 10/12/2022
2.0.100 545 10/11/2022
2.0.89 558 10/9/2022
2.0.78 493 10/6/2022
2.0.75 524 10/3/2022
2.0.72 559 10/2/2022
2.0.60 589 9/26/2022
2.0.51 594 9/22/2022