A comprehensive WPF framework library for .NET Core-based applications, extending Prism and CommunityToolkit.Mvvm
Jamesnet.Wpf is a powerful WPF framework library designed for modern .NET Core-based applications. It builds upon and extends the capabilities of key libraries to provide a comprehensive solution for building robust, maintainable, and scalable WPF applications in the .NET Core ecosystem.
- Fully compatible with .NET Core's dependency management system
- Leverages .NET Core's enhanced performance and cross-platform capabilities
- Builds upon Prism.Unity for a streamlined dependency injection system
- Efficient management of singleton instances and types
- Extends CommunityToolkit.Mvvm with additional MVVM utilities
- Simplified view registration and view/viewmodel connections
- Region management for view injection
- Dynamic resource binding capabilities
- Integrated theming and localization structures
- Geometry Path icons for vector graphics
- Enhanced Grid functionalities leveraging WpfAutoGrid.Core
- Custom controls like JamesPanel, JamesContent, JamesWindow
- Extended Application class (JamesApplication) based on PrismApplication
- Comprehensive WPF framework architecture design for .NET Core
- .NET 8.0+ (Core-based)
- WPF (Windows Presentation Foundation)
Jamesnet.Wpf leverages the following key libraries:
- Provides a powerful MVVM framework and modular architecture
- Enables loosely coupled, testable, and maintainable applications
- Offers advanced features like dependency injection and event aggregation
- Simplifies MVVM pattern implementation
- Provides source generators for boilerplate reduction
- Offers a rich set of helpers and base classes for viewmodels
- Enhances WPF's Grid control with auto-layout capabilities
- Simplifies complex grid definitions
- Improves readability and maintainability of XAML layouts
- Visual Studio 2022 or later
- Jetbrains Rider
- .NET 8.0 SDK or later
- Windows 11 recommended
Install the Jamesnet.Wpf NuGet package in your .NET Core WPF project:
dotnet add package Jamesnet.Wpf
Or via the NuGet Package Manager:
Install-Package Jamesnet.Wpf
Jamesnet.Wpf is specifically designed for .NET Core-based WPF applications. It takes full advantage of .NET Core's dependency management system, allowing for more flexible and efficient application architecture.
Key benefits in .NET Core:
- Simplified dependency management
- Enhanced performance
- Better compatibility with modern .NET ecosystems
Jamesnet.Wpf is used in numerous GitHub projects, including:
- WPF: League of Legends
- Reflector
- ColorPicker
- ICommander
- DevFlow
- WPF Explorer
- Theme Switch
- Riot Play Button
- Magic Navigation
- Riot Slider
- Smart Date
- Cupertino TreeView
- JamesPanel
- JamesGrid : AutoGrid
- JamesContent : ContentControl
- JamesWindow : Window
- JamesApplication : PrismApplication
- JamesDataGrid : DataGrid
- ViewModelLocationScenario
- WireDataContext
- ObservableBase : ObservableObject
- IViewable, IViewLoadable, IViewCreatable
- SmartField, TextField, ComboField, DateField, CheckField
Contributions to Jamesnet.Wpf are welcome! Please feel free to submit issues, create pull requests, or suggest improvements.
This project is licensed under the MIT License - see the LICENSE file for details.
- Website: https://jamesnet.dev
- Email: james@jamesnet.dev, lukewire129@ghamil.com, vickyqu115@hotmail.com
Enhance your .NET Core WPF development experience with Jamesnet.Wpf!