.NET Core GUI: различия между версиями

Материал из ALT Linux Wiki
Нет описания правки
 
(не показана 1 промежуточная версия этого же участника)
Строка 24: Строка 24:
https://github.com/picoe/Eto
https://github.com/picoe/Eto
A cross platform desktop and mobile user interface framework
A cross platform desktop and mobile user interface framework
Похож по на gtk но с уклоном на простоту WinForms. Пытается определить платформу и в зависимости от этого(подобно авалония) выбирает графическую библиотеку (gtk2, gtk, WinForms и т.д.).


=== GtkSharp === is a C# wrapper for Gtk and its related components. The component list includes the following libraries: glib, gio, cairo, pango, atk, gdk.  
=== GtkSharp ===  
GtkSharp is a C# wrapper for Gtk and its related components. The component list includes the following libraries: glib, gio, cairo, pango, atk, gdk.  
  Target framework Target Gtk Version Extra notes
  Target framework Target Gtk Version Extra notes
GtkSharp .NET Standard 2.0 Gtk 3.22 Does not need glue libraries.
GtkSharp .NET Standard 2.0 Gtk 3.22 Does not need glue libraries.
https://github.com/GtkSharp/GtkSharp
https://github.com/GtkSharp/GtkSharp
[[Категория: .NET]]
[[Категория: .NET]]

Текущая версия от 04:24, 10 января 2020

Графический интерфейс для приложения на .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.

Eto.Forms

https://github.com/picoe/Eto A cross platform desktop and mobile user interface framework Похож по на gtk но с уклоном на простоту WinForms. Пытается определить платформу и в зависимости от этого(подобно авалония) выбирает графическую библиотеку (gtk2, gtk, WinForms и т.д.).

GtkSharp

GtkSharp is a C# wrapper for Gtk and its related components. The component list includes the following libraries: glib, gio, cairo, pango, atk, gdk.

	Target framework 	Target Gtk Version 	Extra notes

GtkSharp .NET Standard 2.0 Gtk 3.22 Does not need glue libraries. https://github.com/GtkSharp/GtkSharp