*** This is just a proof of concept. The demo runs well, but that's all that has been implemented. ***
Modern.Forms is a cross-platform spiritual successor to Winforms for .NET Core 3.0.
This is accomplished with:
- .NET Core 3.0 Preview
- Some infrastructure code from Mono's Winforms (like layouts):
- A port of Avalonia's native backends
- https://github.com/AvaloniaUI/Avalonia
- Only the base infrastructure is used, basically this gives us a blank Form
- SkiaSharp
- All new controls are drawn with SkiaSharp
The goal of this proof of concept is to create a spiritual successor to Winforms that is:
- Cross platform (Windows / Mac / Linux)
- Familiar for Winforms developers (ie: no XAML)
- Sample Form:
- Great for LOB applications and quick apps
- Updated with modern controls and modern aesthetics
- Clone this repository
- Install .NET Core 3.0 Preview 4+
- Open
Modern.Forms.sln
in Visual Studio 2019 - Ensure
Explore
is set as the Startup project - Hit F5
- Clone this repository
- Install .NET Core 3.0 Preview 4+
- Install
libSkiaSharp.so
andlibHarfBuzzSharp.so
- https://github.com/mono/SkiaSharp/releases/download/v1.68.0/libSkiaSharp.so
- https://github.com/mono/SkiaSharp/releases/download/v1.68.0/libHarfBuzzSharp.so
- These can go in
bin/Debug/netcoreapp3.0
or anywhere they can be found
- Navigate to
samples/Explorer
- Run
dotnet run
The OSX backend from Avalonia has not been ported because I do not have a Mac. Given the work done to get the other backends running, it would probably only take a few hours.