Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/atc-net/atc-wpf
A common library for WPF components and MVVM programming model
https://github.com/atc-net/atc-wpf
components-library wpf
Last synced: about 1 month ago
JSON representation
A common library for WPF components and MVVM programming model
- Host: GitHub
- URL: https://github.com/atc-net/atc-wpf
- Owner: atc-net
- License: mit
- Created: 2021-02-25T08:49:06.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2024-05-07T06:13:12.000Z (8 months ago)
- Last Synced: 2024-05-15T15:42:26.534Z (8 months ago)
- Topics: components-library, wpf
- Language: C#
- Homepage: https://atc-net.github.io/repository/atc-wpf
- Size: 5.99 MB
- Stars: 3
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[![NuGet Version](https://img.shields.io/nuget/v/Atc.Wpf.svg?logo=nuget&style=for-the-badge)](https://www.nuget.org/packages/atc.wpf)
# ATC.Net WPF
This is a base libraries for building WPF application with the MVVM design pattern.
# Table of contents
- [ATC.Net WPF](#atcnet-wpf)
- [Table of contents](#table-of-contents)
- [Requirements](#requirements)
- [NuGet Packages Provided in this Repository](#nuget-packages-provided-in-this-repository)
- [Demonstration Application](#demonstration-application)
- [Playground and Viewer for a Given Control or Functionality](#playground-and-viewer-for-a-given-control-or-functionality)
- [Initial glimpse at the demonstration application](#initial-glimpse-at-the-demonstration-application)
- [How to get started with atc-wpf](#how-to-get-started-with-atc-wpf)
- [Readme's for each NuGet Package area](#readmes-for-each-nuget-package-area)
- [Atc.Wpf](#atcwpf)
- [Controls](#controls)
- [Misc](#misc)
- [Atc.Wpf.Controls](#atcwpfcontrols)
- [Controls](#controls-1)
- [Misc](#misc-1)
- [Atc.Wpf.FontIcons](#atcwpffonticons)
- [Misc](#misc-2)
- [Atc.Wpf.Theming](#atcwpftheming)
- [How to contribute](#how-to-contribute)## Requirements
[.NET 8 - Desktop Runtime](https://dotnet.microsoft.com/en-us/download/dotnet/8.0)
## NuGet Packages Provided in this Repository
| Nuget package | Description | Dependencies |
|---------------------|-----------------------------------------------------|---------------------------|
| Atc.Wpf | Base Controls, ValueConverters, Extensions etc. | Atc |
| Atc.FontIcons | Render Svg and Img resources based on fonts | Atc.Wpf |
| Atc.Theming | Theming for Light & Dark mode for WPF base controls | Atc.Wpf |
| Atc.Controls | Miscellaneous UI Controls | Atc.Wpf & Atc.Wpf.Theming |
| Atc.Controls.Sample | Controls for creating WPF sample apps | Atc.Wpf & Atc.Wpf.Theming |## 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](docs/images/lm-wpf-replaycommandasync-sample.png) | XAML ![Img](docs/images/lm-wpf-replaycommandasync-xaml.png) |
| CodeBehind ![Img](docs/images/lm-wpf-replaycommandasync-codebehind.png) | ViewModel ![Img](docs/images/lm-wpf-replaycommandasync-viewmodel.png) |### Initial glimpse at the demonstration application
| Light-Mode | Dark-Mode |
|------------------------------------------------------------------------------|------------------------------------------------------------------------------|
| Wpf - AutoGrid ![Img](docs/images/lm-wpf-autogrid.png) | Wpf - AutoGrid ![Img](docs/images/dm-wpf-autogrid.png) |
| Wpf.Controls - Label MIX ![Img](docs/images/lm-wpf-controls-label-mix.png) | Wpf.Controls - Label MIX ![Img](docs/images/dm-wpf-controls-label-mix.png) |
| Wpf.Theming - ImageButton ![Img](docs/images/lm-wpf-theming-imagebutton.png) | Wpf.Theming - ImageButton ![Img](docs/images/dm-wpf-theming-imagebutton.png) |
| Wpf.FontIcons - Viewer ![Img](docs/images/lm-wpf-fonicons-viewer.png) | Wpf.FontIcons - Viewer ![Img](docs/images/dm-wpf-fonicons-viewer.png) |## How to get started with atc-wpf
First of all, include Nuget packages in the `.csproj` file like this:
```xml
```Then update `App.xaml` like this:
```xml
```
Now it is possible to use controls with theming and default WPF controls like TextBox, Button etc. with theme style.
## Readme's for each NuGet Package area
***Note: Right now, it is a limit amount of controls and components there is documented with a `Readme.md` file.
Therefore run the `Atc.Wpf.Sample` application to explore all the controls and components.*** :-)### Atc.Wpf
#### Controls
- [GridEx](src/Atc.Wpf/Controls/Layouts/GridEx_Readme.md)
- [StaggeredPanel](src/Atc.Wpf/Controls/Layouts/StaggeredPanel_Readme.md)
- [UniformSpacingPanel](src/Atc.Wpf/Controls/Layouts/UniformSpacingPanel_Readme.md)
- [SvgImage](src/Atc.Wpf/Controls/Media/SvgImage_Readme.md)
- Control Helpers
- [PanelHelper](src/Atc.Wpf/Helpers/PanelHelper_Readme.md)#### Misc
- [MVVM framework](src/Atc.Wpf/Mvvm/@Readme.md)
- [RelayCommand's](src/Atc.Wpf/Command/@Readme.md)
- [ShaderEffects](src/Atc.Wpf/Media/ShaderEffects/@Readme.md)
- [How to use HLSL Shader Compiler](src/Atc.Wpf/Media/ShaderEffects/Shaders/@Readme.md)
- [Tranlation & localizaion](src/Atc.Wpf/Translation/@Readme.md)
- [ValueConverters](src/Atc.Wpf/ValueConverters/@Readme.md)### Atc.Wpf.Controls
#### Controls
- [WellKnownColorPicker](src/Atc.Wpf.Controls/ColorControls/WellKnownColorPicker_Readme.md)
#### Misc
- [ValueConverters](src/Atc.Wpf.Controls/ValueConverters/@Readme.md)
### Atc.Wpf.FontIcons
#### Misc
- [ValueConverters](src/Atc.Wpf.FontIcons/ValueConverters/@Readme.md)
### Atc.Wpf.Theming
- [ValueConverters](src/Atc.Wpf.Theming/ValueConverters/@Readme.md)
## How to contribute
[Contribution Guidelines](https://atc-net.github.io/introduction/about-atc#how-to-contribute)
[Coding Guidelines](https://atc-net.github.io/introduction/about-atc#coding-guidelines)