.NET Core/.NET5/.NET6 开源项目汇总9:客户端跨平台UI框架

  • Post author:
  • Post category:其他


.NET Core 实现了跨平台,支持在 Windwos、Linux、macOS上开发与部署,但是也仅限于Web应用程序。对于Windows桌面端应用程序,WinForm 与 WPF 技术是当前最成熟、应用最多的解决方案。因为它们的UI与Windwos操作系统的底层技术紧密关联,所以在Linux、macOS上无法实现相同的UI功能。


產後恢復瑜伽


目前对于跨平台的桌面端UI需求,.NET还没有统一完整的解决方案。期待.NET6中的MAUI能给大家带来惊喜。下面整理了几款桌面端跨平台解决方案。


1、.NET Multi-platform App UI (MAUI)

.NET MAUI是.NET多平台应用程序UI,是一个用于构建跨移动、平板和桌面的本机设备应用程序的框架。

.NET Core/.NET5/.NET6 开源项目汇总9:客户端跨平台UI框架


产品特征

  • 提供支持多平台的原生UI
  • 跨移动和桌面部署到多个设备
  • 使用统一单一项目、单一代码库
  • 由Xamarin.Forms 演变进化而来
  • 作为.NET6的一个重要组件,将于2021年11月与.NET6一起正式发布

开源地址:

https://github.com/dotnet/maui


2、Avalonia

.NET Core/.NET5/.NET6 开源项目汇总9:客户端跨平台UI框架

Avalonia 是一个基于 WPF XAML 的跨平台UI框架,并支持多种操作系统:Windows(.NET Framework,.NET Core),Linux(GTK),MacOS,Android和iOS。


产品特征

  • 开源。永久开源、免费使用。
  • 跨平台。轻松部署到目标平台。移动支持正在公开预览中。

.NET Core/.NET5/.NET6 开源项目汇总9:客户端跨平台UI框架

  • 支持 Visual Studio 扩展项目模板

.NET Core/.NET5/.NET6 开源项目汇总9:客户端跨平台UI框架

  • 复用现有技能。利用现有的知识(WPF、XAML)、代码和包来开发、运行项目。
  • 技术支持。


    夸克浏览器


    提供收费技术支持。

官网:http://avaloniaui.net

教程:

http://avaloniaui.net/docs/quickstart

GitHub: https://github.com/AvaloniaUI/Avalonia


优秀示例项目

  • AvalonStudio

.NET Core/.NET5/.NET6 开源项目汇总9:客户端跨平台UI框架

.NET Core/.NET5/.NET6 开源项目汇总9:客户端跨平台UI框架

.NET Core/.NET5/.NET6 开源项目汇总9:客户端跨平台UI框架

  • AvaloniaEdit.Demo

AvalonEdit是SharpDevelop中使用的基于WPF的文本编辑器。此软件包中包含三个版本的AvaloneEdit:.NET 4.0、4.5和.NET Core 3.0。

使用AvalonEdit的项目

    • https://github.com/icsharpcode/ILSpy/ ILSpy .NET decompiler
    • https://github.com/KirillOsenkov/MSBuildStructuredLog A logger for MSBuild
    • https://github.com/aelij/RoslynPad RoslynPad
    • https://github.com/huangjia2107/XamlViewer LightWeight Xaml Editor
  • 地图 https://github.com/Mapsui/Mapsui、https://github.com/ahopper/Mapsui/tree/initial-avalonia-port(Avalonia)
  • 图形组件 https://github.com/oxyplot/oxyplot-avalonia、https://github.com/dotnet-ad/Microcharts
  • 控件 https://github.com/Splitwirez/Mechanism-for-Avalonia
  • Ribbon https://github.com/amazerol/AvaloniaRibbon、https://github.com/Splitwirez/AvaloniaRibbon
  • 主题编辑器 https://github.com/wieslawsoltes/ThemeEditor
  • 浮动窗口 https://github.com/wieslawsoltes/Dock
  • 样式资源使用 https://habr.com/en/post/471342/
  • 布局 https://www.nequalsonelifestyle.com/2019/06/11/avalonia-grid-panel-layout-part1/
  • 社区项目 https://github.com/AvaloniaCommunity/awesome-avalonia.git
  • 控件例子 https://github.com/AvaloniaUI/ControlCatalogStandalone.git


3、UNO【终极跨平台解决方案】

.NET Core/.NET5/.NET6 开源项目汇总9:客户端跨平台UI框架


  • 支持WebAssembly


产品特征


  • 针对所有操作系统和浏览器

    UNO是唯一用于创建真正的单一来源、多平台应用程序的开放源代码平台。跨本机移动、web和桌面重用99%的业务逻辑和UI层。

.NET Core/.NET5/.NET6 开源项目汇总9:客户端跨平台UI框架


  • 像素无处不在

    在开发特定于平台的应用程序或定制应用程序的外观和感觉时,保持像素对像素位置的完美控制。

.NET Core/.NET5/.NET6 开源项目汇总9:客户端跨平台UI框架


  • C#和XAML提高生产率

    使用C#和XAML的熟悉性和丰富性,以及热重新加载、热重启、编辑和继续等方面的生产力提升开发效率。

.NET Core/.NET5/.NET6 开源项目汇总9:客户端跨平台UI框架


  • 强大的IDE支持

    。Visual Studio、Visual Studio Code、Visual Studio for Mac、Rider都可以开发。

  • 技术支持

    。社区和团队提供免费和有偿的支持。聊天、屏幕分享等方式。

  • 代码片段和示例应用程序

    。在实践中学习。请参阅工程师提供的代码示例。探索Uno平台打开的可能性。

  • 支持WebAssembly

  • 视屏教程

  • 真实客户

    以下公司使用Uno平台开发其应用程序

.NET Core/.NET5/.NET6 开源项目汇总9:客户端跨平台UI框架

官网:https://platform.uno

教程:

https://gallery.platform.uno

示例:

https://platform.uno/code-samples

开源地址:

https://github.com/unoplatform/uno

参考博客:

https://mp.weixin.qq.com/s/xg_St9OHy3hfkk71NzFiPw


4、Electron

.NET Core/.NET5/.NET6 开源项目汇总9:客户端跨平台UI框架

Electron是一个使用 JavaScript、HTML 和 CSS 构建桌面应用程序的框架。通过将Chromium和Node.js嵌入其二进制文件,Electron允许您维护一个JavaScript代码库,并创建可在Windows、macOS和Linux上运行的跨平台应用程序,最主要的是开发者无需本地开发经验。

如果你可以建一个网站,你就可以建一个桌面应用程序。 Electron 是一个使用 JavaScript, HTML 和 CSS 等 Web 技术创建原生程序的框架,它负责比较难搞的部分,你只需把精力放在你的应用的核心上即可。


产品特征


  • Web技术

    Electron 基于 Chromium 和 Node.js, 让你可以使用 HTML, CSS 和 JavaScript 构建应用。

  • 开源

    Electron 是一个由 GitHub 及众多贡献者组成的活跃社区共同维护的开源项目。

  • 跨平台

    Electron 兼容 Mac、Windows 和 Linux,可以构建出三个平台的应用程序。

  • 案例产品

    数千个跨行业的组织使用 Electron 构建跨平台软件。

.NET Core/.NET5/.NET6 开源项目汇总9:客户端跨平台UI框架

官网:

https://www.electronjs.org

教程:

https://www.electronjs.org/docs

开源地址:

https://github.com/electron


5、CPF

.NET Core/.NET5/.NET6 开源项目汇总9:客户端跨平台UI框架

简洁、直观、强悍的netcore跨平台UI开发框架。框架理念和WPF类似,但是没有Xaml,直接用CSS和C#代码描述。

官网:http://cpf.cskin.net

入门教程:

https://www.cnblogs.com/dskin/p/13490921.html



版权声明:本文为weixin_47967031原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。