Avalonia是什么?

Avalonia是一个强大的框架,使开发人员能够使用.NET创建跨平台应用程序。它使用自己的渲染引擎绘制UI控件,确保在Windows、macOS、Linux、Android、iOS和WebAssembly等不同平台上具有一致的外观和行为。这意味着开发人员可以共享他们的UI代码,并在不同的目标平台上保持统一的外观和感觉。

MIT 协议的宽松与便利

MIT 协议(The MIT License)是一种简洁且宽松的开源软件许可协议。它允许使用者自由使用、复制、修改、合并、发布、分发、再许可和 / 或销售软件副本。使用者在软件和软件的所有副本中都必须包含版权声明和许可声明。MIT 协议对使用者的限制很少,基本上赋予了使用者极大的自由,适用于各种开源项目,鼓励代码的共享和重用,促进软件技术的快速发展。

Dotnet和Avalonia都是MIT协议,相关的代码地址是:

Semi.Avalonia和Ursa.Avalonia

(一)Semi.Avalonia - 主题风格的魅力实现

Semi.Avalonia,这是以 MIT 协议开源的 Avalonia UI 框架下的 Semi Design 主题风格的精妙呈现。它为应用程序带来独特的视觉风格,如同一幅精美的画卷,为用户界面增添了丰富的色彩和质感。

其仓库地址为:https://github.com/irihitech/Semi.Avalonia

(二)Ursa.Avalonia - 自定义控件的创新力量

搭配同样遵循 MIT 协议的Ursa.Avalonia自定义控件库,更是如虎添翼。它们携手为开发者缔造全新的视觉与功能体验,仿佛为开发之旅开启了一扇通往无限可能的大门。

仓库地址:https://github.com/irihitech/Ursa.Avalonia

在信创及国产操作系统领域表现

值得一提的是,这两个库在信创及国产操作系统领域表现出色,已完成与龙芯 3A6000 和龙架构(LoongArch)的兼容互认证,这是自主可控和国产化技术推进的重要成果。

下面信息引用来自微信公众号【铱泓科技】8月2号的文章 《Ursa与Semi正式完成龙架构兼容互认证》:

大熊Ursa和Semi两大Avalonia控件集已经完成与龙芯3A6000和龙架构(LoongArch)的兼容互认证。这一重要的里程碑标志着我们在推进自主可控和国产化技术方面取得了新的进展。

控件部分截图

控件虽各有特色,但都展现出独特的魅力。简单截取几张图,让您一窥其貌:

Semi.Avalonia主题库一览:

Ursa.Avalonia自定义控件库一览:

实际案例分享

站长公司项目使用了该控件,虽不便截图展示,但可参考站长使用 Avalonia UI 搭配该主题及控件库编写的工具CodeWF.Toolbox:

仓库:https://github.com/dotnet9/CodeWF.Toolbox

该小工具使用Avalonia+Prism 8模块化开发,AOT 发布后的文件组织结构:

其具备黑白主题,营造出不同的视觉氛围:

还实现了国际化功能,为全球用户提供便捷体验:

同时,包含实用的 Json 美化工具和 YAML 转 Json 工具,分别如下图所示:

Json 美化工具

YAML转Json工具

使用经验分享

  1. 官方文档
  1. 源码阅读

首先,克隆控件仓库(上面给出了地址),依据 Readme 及 Demo 运行效果进行查找。例如,若觉得 Button 的 Warning 效果出色:

可使用 VS Code 或 VS 打开仓库:

  1. 展开Semi.Avalonia.Demo
  2. 找到Pages目录,打开ButtonDemo.axaml
  3. 根据界面关键字Solid、Waring找到需要的样式

如此,便能轻松驾驭这些优秀的控件,为开发工作增添效率与魅力。希望本文能为您在 Avalonia 开源控件库的探索之旅中提供有益的指引和启发,让您在开发道路上创造出更加精彩的应用程序。

Avalonia开源控件库强力推荐-Semi.Avalonia的更多相关文章

  1. Win10 UWP开发系列——开源控件库:UWPCommunityToolkit

    在开发应用的过程中,不可避免的会使用第三方类库.之前用过一个WinRTXamlToolkit.UWP,现在微软官方发布了一个新的开源控件库—— UWPCommunityToolkit 项目代码托管在G ...

  2. [原创][开源]SunnyUI.Net, C# .Net WinForm开源控件库、工具类库、扩展类库、多页面开发框架

    SunnyUI.Net, 基于 C# .Net WinForm 开源控件库.工具类库.扩展类库.多页面开发框架 Blog: https://www.cnblogs.com/yhuse Gitee: h ...

  3. C# WPF开源控件库:MahApps.Metro

    其实站长很久之前就知道这个开源WPF控件库了,只是一直欣赏不了这种风格,但也star了该项目.每次浏览该仓库时,发现star越来越多,也看到很多网友对它的褒奖,所以今天就向大家推荐这款WPF控件库. ...

  4. 《Dotnet9》系列-开源C# Winform控件库强力推荐

    时间如流水,只能流去不流回! 点赞再看,养成习惯,这是您给我创作的动力! 本文 Dotnet9 https://dotnet9.com 已收录,站长乐于分享dotnet相关技术,比如Winform.W ...

  5. 《Dotnet9》系列-开源C# WPF控件库强力推荐

    时间如流水,只能流去不流回! 点赞再看,养成习惯,这是您给我创作的动力! 本文 Dotnet9 https://dotnet9.com 已收录,站长乐于分享dotnet相关技术,比如Winform.W ...

  6. Github 开源:升讯威 Winform 开源控件库( Sheng.Winform.Controls)

    Github 地址:https://github.com/iccb1013/Sheng.Winform.Controls 本控件库中的代码大约写于10年前(2007年左右),难免有不成熟与欠考虑之处, ...

  7. Winform 开源控件库( Sheng.Winform.Controls)

    升讯威 .Net WinForm 控件库提供了超过15种 Winform 控件,你可以直接使用本控件库,更可以通过本控件库学到 Winform 控件开发的方法和理念. 你可以学习到: 如何基于 Con ...

  8. iOS开源控件库收集

    下拉刷新 将数据保存至keyRing 简单的模板引擎,用来生成html OmniGroup 这个其实不是类库,是一个Cocoa的Recipe CocoaPods 为XCode project提供一个类 ...

  9. C# WPF开源控件库MaterialDesign介绍

    介绍 1.由于前端时间萌发开发一个基础架构得WPF框架得想法, 然后考虑到一些界面层元素统一, 然后就无意间在GitHub上发现一个开源WPF UI, 于是下载下来了感觉不错. 官网地址:http:/ ...

  10. WPF使用MaterialDesign开源控件库

    在WPF控件效果这一块,很显然比winfrom要好很多,但想要做出真正好看的控件,我个人觉得还是需要用一些已有的东西比较好,比如MaterialDesign,控件种类多,自带很多图标,上手比较容易,还 ...

随机推荐

  1. 通过JMX监控weblogic服务

    一.JMX简介 JMX是一种JAVA的正式规范,它主要目的是让程序有被管理的功能,那么怎么理解所谓的"被管理"呢?试想你开发了一个软件(如WEB网站),它是在24小时不间断运行的, ...

  2. yum下载包保存到本地

    1.使用yumdownloadonly下载RPM包及依赖包 #下载yumdownloadonly插件 yum install yum-plugin-downloadonly # yum 下载rpm包到 ...

  3. Swahili-text:华中大推出非洲语言场景文本检测和识别数据集 | ICDAR 2024

    论文提出了一个专门针对斯瓦希里语自然场景文本检测和识别的数据集,这在当前研究中是一个未充分开发的语言领域.数据集包括976张带标注的场景图像,可用于文本检测,以及8284张裁剪后的图像用于识别. 来源 ...

  4. Zsh 配置

    基本配置 安裝 Zsh: # Ubuntu/Debian sudo apt install zsh # macOS brew install zsh macOS 默认使用 Zsh,可以不用重复安装. ...

  5. 使用 nuxi build 命令构建你的 Nuxt 应用程序

    title: 使用 nuxi build 命令构建你的 Nuxt 应用程序 date: 2024/8/30 updated: 2024/8/30 author: cmdragon excerpt: n ...

  6. Blender 2D动画

    前情提要: 本来之前会的,很久没有弄,居然忘了,忘得透透的,没得办法,先简单记录一下 前提: 安装有Blender软件 步骤: 1. 打开Blender 2.点击文件,新建,2D Animation ...

  7. 如何高效的阅读paper--三遍阅读法

    第一遍 1.阅读文章的标题.摘要和介绍 2.阅读每一节的标题和副标题 3.阅读总结 4.浏览参考文献,看看是否有曾经读过的文章 在完成第一遍后,应该做到: 1.能够说出该篇论文的类型 2.能够说出文章 ...

  8. 用 SQL 写的俄罗斯方块游戏「GitHub 热点速览」

    在开始介绍上周热门开源项目之前,要插播一条开源新闻:Nginx 已正式迁移至 GitHub. 近日,Nginx 官方宣布将 Nginx 开源项目,从 Mercurial 迁移至 GitHub 代码托管 ...

  9. SpringBoot——配置文件分类

    配置文件分类 1级:file:config/application.yml(jar包所在目录)               [最高] 2级:file:application.yml 3级:classp ...

  10. BOOST <boost/asio.hpp> 奇怪的编译错误 boost/asio/detail/consuming_buffers.hpp:105:65: error

    在我的项目工程代码内#include <boost/asio.hpp>后导致了编译报错: ./include/boost/asio/detail/consuming_buffers.hpp ...