Atc.Wpf.Theming
4.0.69
dotnet add package Atc.Wpf.Theming --version 4.0.69
NuGet\Install-Package Atc.Wpf.Theming -Version 4.0.69
<PackageReference Include="Atc.Wpf.Theming" Version="4.0.69" />
<PackageVersion Include="Atc.Wpf.Theming" Version="4.0.69" />
<PackageReference Include="Atc.Wpf.Theming" />
paket add Atc.Wpf.Theming --version 4.0.69
#r "nuget: Atc.Wpf.Theming, 4.0.69"
#:package Atc.Wpf.Theming@4.0.69
#addin nuget:?package=Atc.Wpf.Theming&version=4.0.69
#tool nuget:?package=Atc.Wpf.Theming&version=4.0.69
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 - 160+ controls including labeled form controls, flyouts, color pickers, selectors, and specialized input controls
- 🏛️ Four-Tier Architecture - Clear separation: Base → Controls → Forms → Components
- 🌓 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 - FlexPanel, AutoGrid, StaggeredPanel, Card, Badge and more
- 🌍 Localization - Built-in translation and localization support
- 🎭 Value Converters - Extensive collection of XAML value converters
Requirements
- .NET 10 - Desktop Runtime
- Windows 10 or later
NuGet Packages Provided in this Repository
🔎 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
Sampletab shows how to use the control or feature. - The
XAMLtab displays the corresponding XAML markup. - The
CodeBehindtab reveals the underlying code-behind. - The
ViewModeltab displays the associated ViewModel, if used. - The
Readmetab displays the associated [control]_Readme.md, if exist.
| Sample |
XAML |
| CodeBehind |
ViewModel |
🔦 Initial glimpse at the demonstration application
| Light-Mode | Dark-Mode |
|---|---|
| Wpf - AutoGrid |
Wpf - AutoGrid |
| Wpf.Controls - Label MIX |
Wpf.Controls - Label MIX |
| Wpf.Theming - ImageButton |
Wpf.Theming - ImageButton |
| Wpf.FontIcons - Viewer |
Wpf.FontIcons - Viewer |
🚀 Quick Start Guide
Installation
Add the NuGet packages to your .csproj file:
<ItemGroup>
<PackageReference Include="Atc.Wpf" Version="4.*" />
<PackageReference Include="Atc.Wpf.Theming" Version="4.*" />
<PackageReference Include="Atc.Wpf.Forms" Version="4.*" />
<PackageReference Include="Atc.Wpf.Components" Version="4.*" />
<PackageReference Include="Atc.Wpf.FontIcons" Version="4.*" />
</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 Source="pack://application:,,,/Atc.Wpf.Components;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.
🎯 Four-Tier Architecture
Understanding the package hierarchy and when to use each:
| Tier | Package | Purpose | Example Controls |
|---|---|---|---|
| 1. Base | Atc.Wpf |
MVVM, layouts, converters - no UI controls | ViewModelBase, GridEx, FlexPanel |
| 2. Controls | Atc.Wpf.Controls |
Atomic/primitive controls | IntegerBox, ToggleSwitch, Carousel, CountrySelector |
| 3. Forms | Atc.Wpf.Forms |
Labeled form fields with validation | LabelTextBox, LabelComboBox, LabelDatePicker |
| 4. Components | Atc.Wpf.Components |
Composite high-level components | InfoDialogBox, Flyout, DualListSelector, JsonViewer |
Quick Guidelines:
- Use Form Controls (
Atc.Wpf.Forms) for standard forms - they include labels, validation, and mandatory indicators - Use Base Controls (
Atc.Wpf.Controls) when you need custom layouts or are building composite controls - Use Components (
Atc.Wpf.Components) for dialogs, viewers, and settings panels
📋 Control Catalog at a Glance
A quick reference of all controls organized by category:
| Category | Controls | Package |
|---|---|---|
| Layout Panels | GridEx, AutoGrid, FlexPanel, StaggeredPanel, UniformSpacingPanel, ResponsivePanel, DockPanelPro | Atc.Wpf / Atc.Wpf.Controls |
| Data Display | Alert, Card, Badge, Chip, Avatar, AvatarGroup, Divider, Carousel, Breadcrumb, Stepper, Segmented, Timeline, Popover | Atc.Wpf.Controls |
| Flyouts | Flyout, FlyoutHost, FlyoutService | Atc.Wpf.Components |
| Input Controls | NumericBox, IntegerBox, DecimalBox, CurrencyBox, ToggleSwitch, RangeSlider, Rating, FilePicker, DirectoryPicker | Atc.Wpf.Controls |
| Color Controls | HueSlider, SaturationBrightnessPicker, TransparencySlider, WellKnownColorPicker | Atc.Wpf.Controls |
| Buttons | ImageButton, SplitButton, AuthenticationButton, ConnectivityButton | Atc.Wpf.Controls |
| Progress | BusyOverlay, LoadingIndicator, Overlay, Skeleton | Atc.Wpf.Controls |
| Drag & Drop | DragDropAttach | Atc.Wpf |
| Selectors | CountrySelector, LanguageSelector, FontFamilySelector | Atc.Wpf.Controls |
| Selectors | DualListSelector | Atc.Wpf.Components |
| Labeled Form Controls | LabelTextBox, LabelIntegerBox, LabelComboBox, LabelDatePicker, LabelColorPicker, + 20 more | Atc.Wpf.Forms |
| Dialogs | InfoDialogBox, QuestionDialogBox, InputDialogBox, InputFormDialogBox, ColorPickerDialogBox | Atc.Wpf.Forms / Components |
| Viewers | JsonViewer, TerminalViewer | Atc.Wpf.Components |
| Notifications | ToastNotification, ToastNotificationManager, IToastNotificationService | Atc.Wpf.Components |
| Printing | IPrintService, PrintService, PrintPreviewWindow | Atc.Wpf / Atc.Wpf.Components |
| Undo/Redo | IUndoRedoService, UndoRedoService, UndoRedoHistoryView | Atc.Wpf / Atc.Wpf.Components |
| Animation | AnimationExtensions, AnimateAttach, AnimationParameters | Atc.Wpf |
| Clipboard | IClipboardService, ClipboardService | Atc.Wpf |
| Hotkeys | IHotkeyService, HotkeyService | Atc.Wpf |
| Navigation | INavigationService, INavigationGuard | Atc.Wpf |
| Screen Capture | ICaptureService, CaptureService | Atc.Wpf.Components |
| Busy Indicator | IBusyIndicatorService, BusyIndicatorService | Atc.Wpf.Components |
| Theming | NiceWindow, ThemeSelector, AccentColorSelector, TransitioningContentControl | Atc.Wpf.Theming |
| Font Icons | FontAwesome 5 (3 variants), FontAwesome 7 (3 variants), Bootstrap, MaterialDesign, Weather, IcoFont | Atc.Wpf.FontIcons |
| Network | NetworkScannerView | Atc.Wpf.Network |
💝 MVVM Made Easy
For MVVM infrastructure, add the Atc.XamlToolkit package to your project. This provides powerful source generators and base classes for clean MVVM architecture.
Note: As of version 4.x,
Atc.Wpfno longer directly depends onAtc.XamlToolkitto optimize build performance. AddAtc.XamlToolkitdirectly to your project to use source generators and MVVM base classes.
Key MVVM Features (from Atc.XamlToolkit)
- Observable Properties - Automatic
INotifyPropertyChangedimplementation via[ObservableProperty]attribute - Relay Commands - Simple command implementation with
CanExecutesupport via[RelayCommand]attribute - Async Commands - Built-in support for async/await patterns
- Source Generators - Automatic code generation for ViewModels, DependencyProperties, and AttachedProperties
MVVM Components
| Component | Source | Description |
|---|---|---|
ViewModelBase |
Atc.XamlToolkit.Mvvm | Base class for ViewModels |
ObservableObject |
Atc.XamlToolkit.Mvvm | Base class implementing INotifyPropertyChanged |
RelayCommand<T> |
Atc.XamlToolkit.Command | Command with CanExecute support |
RelayCommandAsync<T> |
Atc.XamlToolkit.Command | Async command with CanExecute support |
[ObservableProperty] |
Atc.XamlToolkit | Source generator for properties |
[RelayCommand] |
Atc.XamlToolkit | Source generator for commands |
[DependencyProperty] |
Atc.XamlToolkit.Wpf | Source generator for WPF dependency properties |
[AttachedProperty] |
Atc.XamlToolkit.Wpf | Source generator for WPF attached 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.Sampleapplication, 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 and containers for advanced UI composition. See the complete Layout Controls documentation for detailed usage.
| Control | Description | Key Features | Documentation |
|---|---|---|---|
| GridEx | Enhanced Grid | String-based row/column definitions | Readme |
| AutoGrid | Auto-indexed Grid | Automatic child positioning | Readme |
| FlexPanel | CSS Flexbox panel | Grow/shrink, justify, align | Readme |
| StaggeredPanel | Masonry layout | Pinterest-style waterfall | Readme |
| UniformSpacingPanel | Uniform spacing | Consistent gaps + wrapping | Readme |
| ResponsivePanel | Responsive layout | Breakpoint-based responsive design | Readme |
| DockPanelPro | IDE-style docking | Resizable regions | Readme |
Data Display Controls
| Control | Description | Key Features | Documentation |
|---|---|---|---|
| Alert | Inline message | Severity levels, variants, dismissible | Readme |
| Card | Content container | Elevation, header/footer, expand | Readme |
| Badge | Status indicator | Notification counts, dots | Readme |
| Chip | Tag/filter control | Selectable, removable | Readme |
| Avatar | User profile picture | Initials fallback, status indicator | Readme |
| Divider | Visual separator | Horizontal/vertical | Readme |
| Carousel | Image carousel | Navigation, auto-play, swipe | Readme |
| Breadcrumb | Navigation path | Overflow, custom separators | Readme |
| Popover | Positioned popup | Placement modes, triggers, light dismiss | Readme |
| Stepper | Step-by-step progress | Cancelable transitions | Readme |
| Segmented | Segment selector | Mutually exclusive selection | Readme |
| Timeline | Timeline display | Vertical/horizontal, alternate mode | Readme |
Media Controls
- SvgImage - SVG image rendering control
Helpers & Utilities
- PanelHelper - Helper methods for panel layout calculations
Services
| Service | Description | Documentation |
|---|---|---|
| IClipboardService | MVVM-friendly clipboard operations with history | Readme |
| IUndoRedoService | Undo/redo with command grouping and history limits | Readme |
| IHotkeyService | Global and local keyboard shortcut management | - |
| INavigationService | View navigation with guards and history | - |
| IPrintService | Print and print-preview service interface | Readme |
Animation Library
Reusable animation utilities for fade, slide, and scale effects — both async code-behind and XAML-only attached properties.
| Component | Description | Documentation |
|---|---|---|
| AnimationExtensions | Async extension methods (FadeIn/Out, SlideIn/Out, ScaleIn/Out) | Readme |
| AnimateAttach | XAML attached properties for declarative animations | Readme |
| AnimationParameters | Configuration with presets (Fast, Default, Slow) | Readme |
Drag & Drop Framework
| Component | Description | Documentation |
|---|---|---|
| DragDropAttach | XAML attached properties for declarative drag-and-drop | Readme |
Infrastructure framework providing reusable drag-and-drop behavior via attached properties, interfaces (IDragHandler, IDropHandler), and adorners.
Additional Features
- ShaderEffects - HLSL-based visual effects
- Translation & Localization - Multi-language support
- ValueConverters - Collection of XAML value converters
💟 Atc.Wpf.Controls - Atomic Control Library
A collection of primitive/atomic WPF controls - single-purpose building blocks.
⭐ Input Controls
Unlabeled input controls that provide core functionality:
| Category | Controls |
|---|---|
| Number Input | NumericBox, IntegerBox, DecimalBox, CurrencyBox, IntegerXyBox, DecimalXyBox, PixelSizeBox |
| Toggle & Slider | ToggleSwitch, RangeSlider, Rating |
| Pickers | DirectoryPicker, FilePicker |
| Text Input | RichTextBoxEx |
Button Controls
| Control | Description | Documentation |
|---|---|---|
| ImageButton | Button with bitmap/SVG image | Readme |
| ImageToggledButton | Two-state toggle button | Readme |
| SplitButton | Primary action + dropdown menu | Readme |
| AuthenticationButton | Login/logout toggle | Readme |
| ConnectivityButton | Connect/disconnect toggle | Readme |
Color Controls
| Control | Description | Documentation |
|---|---|---|
| WellKnownColorPicker | Named color palette picker | Readme |
| HueSlider | Hue selection slider | Readme |
| SaturationBrightnessPicker | 2D saturation/brightness picker | Readme |
| TransparencySlider | Alpha channel slider | Readme |
Layout Controls
| Control | Description | Documentation |
|---|---|---|
| DockPanelPro | IDE-style docking panel | Readme |
| GridLines | Grid overlay for debugging | Readme |
| GroupBoxExpander | Collapsible group box | Readme |
Data Display Controls
| Control | Description | Documentation |
|---|---|---|
| Alert | Inline message with severity levels and variants | Readme |
| Avatar | User profile pictures with initials fallback | Readme |
| Carousel | Image carousel/slideshow with navigation | Readme |
| Badge | Status indicator overlay | Readme |
| Card | Elevated container with header/footer | Readme |
| Chip | Tag/filter interactive elements | Readme |
| Divider | Visual separator (horizontal/vertical) | Readme |
| Breadcrumb | Navigation path with overflow | Readme |
| Popover | Positioned popup with placement and triggers | Readme |
| Segmented | Mutually exclusive segment selector | Readme |
| Stepper | Step-by-step progress indicator | Readme |
| Timeline | Vertical/horizontal timeline display | Readme |
Drag & Drop
| Control | Description | Documentation |
|---|---|---|
| DragDropAttach | XAML-driven drag-and-drop framework | Readme |
Note: DragDrop is infrastructure in
Atc.Wpf(core), not in Controls.
Selector Controls
| Control | Description | Documentation |
|---|---|---|
| CountrySelector | Country dropdown with flags | Readme |
| LanguageSelector | Language dropdown with flags | Readme |
| FontFamilySelector | Font family dropdown with previews | Readme |
Progress Controls
| Control | Description | Documentation |
|---|---|---|
| BusyOverlay | Dimming overlay with loading indicator | Readme |
| LoadingIndicator | Animated loading indicator | Readme |
| Overlay | Content dimming with fade animations | Readme |
| Skeleton | Loading placeholder with shimmer effect | Readme |
💟 Atc.Wpf.Forms - Form Field Library
Form field components with labels, validation, and mandatory indicators for building data entry forms.
⭐ Label Controls (25+ Controls)
Labeled input controls with built-in validation and consistent styling:
- Text Input: LabelTextBox, LabelPasswordBox
- Number Input: LabelIntegerBox, LabelDecimalBox, LabelIntegerXyBox, LabelDecimalXyBox, LabelPixelSizeBox
- Date/Time: LabelDatePicker, LabelTimePicker, LabelDateTimePicker
- Selection: LabelCheckBox, LabelComboBox, LabelToggleSwitch, LabelSlider
- 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
Form Infrastructure
- Abstractions: ILabelControl, ILabelControlsForm
- Extractors: Form data extraction utilities
- Factories: LabelControlFactory, LabelControlsFormFactory
- Writers: Form rendering utilities
💟 Atc.Wpf.Components - Composite Components
Higher-level composite components combining multiple controls for business-ready UI.
Dialogs
| Control | Description | Documentation |
|---|---|---|
| InfoDialogBox | Information-only dialog | Readme |
| QuestionDialogBox | Yes/No confirmation dialog | Readme |
| InputDialogBox | Single input dialog | Readme |
| InputFormDialogBox | Multi-field form dialog | Readme |
| BasicApplicationSettingsDialogBox | Settings dialog | Readme |
| DialogService | MVVM-friendly dialog management | - |
Note: ColorPickerDialogBox is located in Atc.Wpf.Forms.Dialogs
Flyout Controls
Sliding panel overlays that slide in from window edges - inspired by Azure Portal blade pattern.
| Control | Description | Documentation |
|---|---|---|
| Flyout | Sliding panel overlay from edges (Right, Left, Top, Bottom) | Readme |
| FlyoutHost | Container that manages multiple flyouts with nesting support | Readme |
| FlyoutService | MVVM-friendly service for programmatic flyout management | Readme |
Selectors
| Control | Description | Documentation |
|---|---|---|
| DualListSelector | Dual-list transfer control with filtering, reordering, and drag-drop | Readme |
Viewers
| Control | Description | Documentation |
|---|---|---|
| JsonViewer | JSON document viewer with syntax highlighting | Readme |
| TerminalViewer | Terminal/console output viewer | Readme |
Monitoring
| Control | Description | Documentation |
|---|---|---|
| ApplicationMonitorView | Application event monitoring component | Readme |
Notifications
| Control | Description | Documentation |
|---|---|---|
| ToastNotification | Toast notification system | Readme |
| IToastNotificationService | MVVM-friendly notification service | Readme |
Printing
| Control | Description | Documentation |
|---|---|---|
| IPrintService / PrintService | MVVM-friendly print and preview service | Readme |
Undo/Redo
| Control | Description | Documentation |
|---|---|---|
| UndoRedoHistoryView | Unified history view for navigating undo/redo stacks | Readme |
Busy Indicator
| Control | Description | Documentation |
|---|---|---|
| IBusyIndicatorService | MVVM-friendly busy overlay management | Readme |
Screen Capture
| Control | Description | Documentation |
|---|---|---|
| ICaptureService | MVVM-friendly screen and element capture | Readme |
Settings
| Control | Description | Documentation |
|---|---|---|
| BasicApplicationSettingsView | Embeddable settings panel | Readme |
💟 Atc.Wpf.FontIcons - Font-Based Icons
Render SVG and image resources using font-based icon systems for crisp, scalable icons. See the complete Font Icons documentation for detailed usage.
Features
- 🎨 Scalable vector icons from 7 font families
- 🎯 Font-based (
Font*) and image-based (Image*) rendering - 🔄 Spin animation, rotation, and flip transformations
- 🌈 Color and size customization
Supported Icon Families
Font Awesome 5 (Solid, Regular, Brand), Font Awesome 7 (Solid, Regular, Brand), Bootstrap Glyphicons, Material Design, Weather Icons, IcoFont
Resources
- Font Icons Guide - Complete documentation for all 14 icon controls
- ValueConverters - Icon-related value converters
💟 Atc.Wpf.Theming - Light & Dark Mode
Complete theming infrastructure with Light and Dark mode support for all WPF controls. See the complete Theming documentation for detailed usage.
Features
- 🌓 Light/Dark theme switching
- 🎨 Accent color customization
- 🎯 Automatic control styling
- 🔄 Runtime theme changes
- 🪟 NiceWindow with customizable title bar, window commands, and dialog hosting
Key Controls
| Control | Description | Documentation |
|---|---|---|
| NiceWindow | Enhanced window with title bar, commands, overlays | Readme |
| ThemeSelector | Light/Dark theme dropdown | Readme |
| AccentColorSelector | Accent color dropdown | Readme |
| TransitioningContentControl | Animated content transitions | Readme |
Resources
- Theming Guide - Complete documentation for all theming controls
- ValueConverters - Theme-aware value converters
💟 Atc.Wpf.Network - Network Discovery Controls
Specialized controls for network scanning and host discovery, built on the Atc.Network library.
NetworkScannerView Control
A comprehensive network scanner control that displays scan results in a sortable, filterable ListView.
Features:
- 🔍 IP range scanning with configurable start/end addresses
- 📊 Real-time progress reporting with cancellation support
- 🌐 Displays IP address, hostname, MAC address, and vendor information
- 🚪 Port scanning with configurable port lists
- 📶 Network quality indicators (ping status visualization)
- 🔄 Sortable columns with click-to-sort headers
- 🎛️ Configurable column visibility
- 🔎 Built-in filtering (show only successful pings, show only hosts with open ports)
- 🌍 Localization support (English, Danish, German)
Usage:
<Window xmlns:atcNetwork="clr-namespace:Atc.Wpf.Network;assembly=Atc.Wpf.Network">
<atcNetwork:NetworkScannerView DataContext="{Binding NetworkScannerVm}" />
</Window>
// ViewModel setup
var viewModel = new NetworkScannerViewModel
{
StartIpAddress = "192.168.1.1",
EndIpAddress = "192.168.1.254",
PortsNumbers = [80, 443, 22, 3389]
};
// Start scanning
await viewModel.ScanCommand.ExecuteAsync(null);
// Handle selection changes
viewModel.EntrySelected += (sender, args) =>
{
var selectedHost = args.NetworkHost;
// Handle selected host
};
ViewModels:
NetworkScannerViewModel- Main ViewModel for the scanner controlNetworkHostViewModel- Represents a discovered network hostNetworkScannerColumnsViewModel- Controls column visibilityNetworkScannerFilterViewModel- Controls result filtering
🎯 Source Generators
Atc.Wpf includes powerful source generators from Atc.XamlToolkit to reduce boilerplate code:
- ViewModel Generator - Auto-generate ViewModels with
[ObservableProperty]and[RelayCommand] - DependencyProperty Generator - Auto-generate WPF dependency properties with
[DependencyProperty] - AttachedProperty Generator - Auto-generate WPF attached properties with
[AttachedProperty]
🤝 Contributing
We welcome contributions! Please read our guidelines:
- Contribution Guidelines - How to contribute to ATC projects
- Coding Guidelines - Code style and best practices
📄 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.
- Visit atc-net.github.io for more ATC projects
- Report issues on GitHub Issues
- Contribute on GitHub
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0-windows7.0 is compatible. |
-
net10.0-windows7.0
- Atc (>= 3.0.16)
- Atc.Wpf (>= 4.0.69)
- Atc.XamlToolkit (>= 3.0.6)
- Atc.XamlToolkit.Wpf (>= 3.0.6)
- ControlzEx (>= 7.0.3)
NuGet packages (3)
Showing the top 3 NuGet packages that depend on Atc.Wpf.Theming:
| Package | Downloads |
|---|---|
|
Atc.Wpf.Controls
WPF control library providing atomic UI controls including input controls, pickers, layouts, and progress indicators. |
|
|
Atc.Wpf.Controls.Sample
Reusable WPF controls for building sample and demonstration applications. |
|
|
Atc.Wpf.Components
WPF composite component library providing dialogs, viewers, settings panels, and notifications. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 4.0.69 | 0 | 2/10/2026 |
| 4.0.27 | 159 | 1/27/2026 |
| 4.0.25 | 96 | 1/25/2026 |
| 4.0.4 | 104 | 1/21/2026 |
| 4.0.3 | 95 | 1/20/2026 |
| 4.0.1 | 95 | 1/19/2026 |
| 3.0.4 | 103 | 1/8/2026 |
| 3.0.3 | 100 | 1/7/2026 |
| 3.0.1 | 97 | 1/6/2026 |
| 2.0.665 | 229 | 10/20/2025 |
| 2.0.664 | 221 | 10/6/2025 |
| 2.0.659 | 214 | 10/2/2025 |
| 2.0.657 | 342 | 9/15/2025 |
| 2.0.651 | 203 | 7/14/2025 |
| 2.0.647 | 356 | 5/13/2025 |
| 2.0.646 | 321 | 5/12/2025 |
| 2.0.642 | 240 | 5/7/2025 |
| 2.0.640 | 241 | 5/5/2025 |
| 2.0.638 | 230 | 5/4/2025 |
| 2.0.636 | 278 | 4/22/2025 |
| 2.0.631 | 247 | 4/10/2025 |
| 2.0.627 | 277 | 4/5/2025 |
| 2.0.626 | 208 | 4/5/2025 |
| 2.0.624 | 255 | 4/3/2025 |
| 2.0.621 | 258 | 4/2/2025 |
| 2.0.618 | 241 | 4/1/2025 |
| 2.0.605 | 224 | 3/26/2025 |
| 2.0.599 | 276 | 3/17/2025 |
| 2.0.597 | 252 | 3/17/2025 |
| 2.0.596 | 230 | 3/16/2025 |
| 2.0.595 | 252 | 3/16/2025 |
| 2.0.594 | 230 | 3/16/2025 |
| 2.0.593 | 218 | 3/16/2025 |
| 2.0.592 | 223 | 3/16/2025 |
| 2.0.582 | 288 | 2/19/2025 |
| 2.0.581 | 202 | 2/19/2025 |
| 2.0.580 | 190 | 2/19/2025 |
| 2.0.579 | 221 | 2/19/2025 |
| 2.0.578 | 198 | 2/18/2025 |
| 2.0.574 | 183 | 2/16/2025 |
| 2.0.569 | 207 | 2/16/2025 |
| 2.0.568 | 180 | 2/16/2025 |
| 2.0.565 | 201 | 2/15/2025 |
| 2.0.563 | 210 | 2/15/2025 |
| 2.0.562 | 191 | 2/12/2025 |
| 2.0.561 | 190 | 2/10/2025 |
| 2.0.547 | 203 | 2/9/2025 |
| 2.0.545 | 212 | 2/8/2025 |
| 2.0.534 | 225 | 2/8/2025 |
| 2.0.530 | 179 | 1/19/2025 |
| 2.0.524 | 269 | 6/13/2024 |
| 2.0.519 | 206 | 6/12/2024 |
| 2.0.517 | 196 | 6/11/2024 |
| 2.0.511 | 196 | 6/7/2024 |
| 2.0.505 | 296 | 4/26/2024 |
| 2.0.499 | 265 | 4/7/2024 |
| 2.0.495 | 218 | 3/26/2024 |
| 2.0.493 | 223 | 3/22/2024 |
| 2.0.491 | 199 | 3/21/2024 |
| 2.0.484 | 212 | 3/21/2024 |
| 2.0.480 | 209 | 3/18/2024 |
| 2.0.468 | 247 | 3/10/2024 |
| 2.0.449 | 215 | 3/4/2024 |
| 2.0.424 | 245 | 2/25/2024 |
| 2.0.419 | 228 | 2/22/2024 |
| 2.0.413 | 230 | 2/22/2024 |
| 2.0.408 | 240 | 2/22/2024 |
| 2.0.406 | 188 | 2/21/2024 |
| 2.0.403 | 206 | 2/18/2024 |
| 2.0.398 | 241 | 2/10/2024 |
| 2.0.396 | 217 | 2/10/2024 |
| 2.0.394 | 211 | 2/9/2024 |
| 2.0.392 | 210 | 2/9/2024 |
| 2.0.387 | 219 | 2/7/2024 |
| 2.0.385 | 206 | 1/27/2024 |
| 2.0.382 | 204 | 1/23/2024 |
| 2.0.379 | 277 | 1/3/2024 |
| 2.0.377 | 221 | 1/3/2024 |
| 2.0.361 | 254 | 12/17/2023 |
| 2.0.358 | 247 | 12/16/2023 |
| 2.0.344 | 220 | 12/13/2023 |
| 2.0.342 | 263 | 12/9/2023 |
| 2.0.337 | 218 | 12/3/2023 |
| 2.0.333 | 218 | 12/3/2023 |
| 2.0.331 | 226 | 11/30/2023 |
| 2.0.312 | 202 | 11/24/2023 |
| 2.0.308 | 199 | 11/24/2023 |
| 2.0.297 | 277 | 11/11/2023 |
| 2.0.290 | 208 | 11/8/2023 |
| 2.0.285 | 241 | 11/1/2023 |
| 2.0.280 | 257 | 10/25/2023 |
| 2.0.265 | 317 | 9/10/2023 |
| 2.0.260 | 288 | 8/9/2023 |
| 2.0.242 | 319 | 7/22/2023 |
| 2.0.195 | 312 | 7/4/2023 |
| 2.0.178 | 870 | 11/18/2022 |
| 2.0.176 | 443 | 11/16/2022 |
| 2.0.174 | 471 | 11/16/2022 |
| 2.0.168 | 587 | 11/13/2022 |
| 2.0.164 | 525 | 11/10/2022 |
| 2.0.162 | 480 | 11/8/2022 |
| 2.0.160 | 485 | 11/7/2022 |
| 2.0.128 | 636 | 10/17/2022 |
| 2.0.125 | 531 | 10/15/2022 |
| 2.0.119 | 552 | 10/14/2022 |
| 2.0.115 | 539 | 10/13/2022 |
| 2.0.107 | 540 | 10/13/2022 |
| 2.0.104 | 556 | 10/12/2022 |
| 2.0.100 | 543 | 10/11/2022 |
| 2.0.89 | 565 | 10/9/2022 |
| 2.0.78 | 530 | 10/6/2022 |
| 2.0.75 | 564 | 10/3/2022 |
| 2.0.72 | 542 | 10/2/2022 |
| 2.0.60 | 576 | 9/26/2022 |
| 2.0.51 | 646 | 9/22/2022 |
| 2.0.49 | 582 | 9/22/2022 |