.NET Core GUI

Материал из ALT Linux Wiki

Графический интерфейс для приложения на .NET Core может быть реализован следующими способами:

  • Создание приложения в модели ASP.NET Core и отображения клиенту интерфейса через произвольный браузер;
  • Использование Electron для отображения интерфейса. Это придаст приложению свойства десктопности (отдельность в панели задач, нахождение в трее при необходимости, взаимодействие с операционной системой);
  • Использование Avalonia (свободный межплатформенный GUI для .NET);
  • Использование проекта electron-edge, выполняющего .NET и Node.js в одном процессе в Electron. На данный момент проект поддерживает только старую версию .NET Core 1.0 и не рассматривается.
  • Использование связки с одной из существующих библиотек:

Avalonia

Avalonia – свободный кроссплатформенный GUI-фреймворк для .NET, способный работать под .NET Core, который доступен под Linux. Avalonia во многом похож на WPF, использует XAML и подразумевает использование MVVM-архитектуры приложений, но при этом не привязан к Windows-платформе и Microsoft. Avalonia работает не только на десктопе (Linux, Windows, MacOS), но и на мобильных устройствах (Android, iOS). Фреймворк имеет свой набор GUI-элементов, которые одинаково выглядят на всех системах.

Фреймворк пока что находится в alpha-версии, но он активно развивается и выглядит довольно перспективным решением для создания кроссплатформенных графических приложений. Его важным преимуществом является сходство с WPF, вплоть до использования тех же XAML-файл с описанием интерфейса, что упрощает портирование существующих WPF-приложений.

Ссылки

SpaceVIL

https://spvessel.com/ SpaceVIL основан на OpenGL и кроссплатформенной библиотекой GLFW. Особенности - высокая производительность и идентичность поддержки как dotnet, так и jvm.