一款开源、免费、美观的 Avalonia UI 原生控件库 - Semi Avalonia

news/2024/11/29 8:03:20/文章来源:https://www.cnblogs.com/Can-daydayup/p/18575116

前言

最近发现DotNetGuide技术社区交流群有不少小伙伴在学习Avalonia,今天大姚给大家分享一款开源、免费、美观的 Avalonia UI 原生控件库:Semi Avalonia。

Avalonia项目介绍

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

  • 详细介绍:https://mp.weixin.qq.com/s/_JE8G68qdSuxv-dKRRymyQ

Semi Avalonia介绍

Semi Avalonia是一款开源、免费、独立的 Avalonia UI 原生控件主题库,能够帮助你的 Avalonia UI 应用快速呈现简洁、灵活、现代的视觉风格。

Semi Avalonia 的设计灵感来源于抖音前端团队、MED产品设计团队设计开发维护的 Semi Design。Semi Avalonia 旨在将这个全面、易用、优质的解决方案与 Avalonia UI 的优秀性能及架构结合,帮助用户快速打造兼具性能与美观的现代桌面应用,实现生产力的美学进化。

项目源代码

安装使用

安装NuGet包

搜索:Semi Avalonia包进行安装:

引用 Semi Avalonia 的样式文件

NuGet包安装后需要在 Application.axaml 中引用 Semi Avalonia 的样式文件

<Application
    x:Class="Semi.Avalonia.Demo.App"
    xmlns="https://github.com/avaloniaui"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:semi="https://irihi.tech/semi">
    <Application.Styles>
        <semi:SemiTheme/>
    </Application.Styles>
</Application>

其他控件兼容方案

ColorPicker, DataGrid 和 TreeDataGrid 由单独的NuGet包分发,如果需要可按需安装:

dotnet add package Semi.Avalonia.ColorPicker
dotnet add package Semi.Avalonia.DataGrid
dotnet add package Semi.Avalonia.TreeDataGrid

样式文件:

<Application.Styles>
    <StyleInclude Source="avares://Semi.Avalonia.ColorPicker/Index.axaml" />
    <StyleInclude Source="avares://Semi.Avalonia.DataGrid/Index.axaml" />
    <StyleInclude Source="avares://Semi.Avalonia.TreeDataGrid/Index.axaml" />
</Application.Styles>

控件库效果展示

 

项目源码地址

更多项目实用功能和特性欢迎前往项目开源地址查看👀,别忘了给项目一个Star支持💖。

  • 开源地址:https://github.com/irihitech/Semi.Avalonia
  • 在线文档:https://irihitech.github.io/Semi.Avalonia

优秀项目和框架精选

该项目已收录到C#/.NET/.NET Core优秀项目和框架精选中,关注优秀项目和框架精选能让你及时了解C#、.NET和.NET Core领域的最新动态和最佳实践,提高开发工作效率和质量。坑已挖,欢迎大家踊跃提交PR推荐或自荐(让优秀的项目和框架不被埋没🤞)。

  • GitHub开源地址:https://github.com/YSGStudyHards/DotNetGuide/blob/main/docs/DotNet/DotNetProjectPicks.md
  • Gitee开源地址:https://gitee.com/ysgdaydayup/DotNetGuide/blob/main/docs/DotNet/DotNetProjectPicks.md
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/843233.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

用星球助手搜索本地帖子的手把手教程

通过知识星球手机App或者网页的人都知道, 搜点东西是真费劲, 要么没法搜到想要的东西, 要么就是搜出来一大堆有用的没用的, 根本找不到自己真正想要的东西. 好在星球助手极大程度解决了这个问题. 我们将帖子下载到本地电脑上之后, 我们可以用更加精准的关键词进行搜索, 针对问答…

读数据质量管理:数据可靠性与数据质量问题解决之道18数据发现

数据发现1. 让元数据为业务服务 1.1. 在过去十多年中,数据团队越来越擅长收集大量的数据 1.2. 公司如今正在收集越来越多关于其数据的数据,也就是元数据1.2.1. dbt等ETL解决方案让跟踪和使用元数据变得容易,而云服务提供商则使栈中数据解决方案之间的元数据的互操作性变得更…

初见客户交流指南:精准高效,建立信任

在已知客户对产品有大致需求(询盘)的背景下,初次拜访交流至关重要。以下是一份实用的交流指南: 充分准备 自我介绍清晰明了 简洁明了地告知客户您的基本信息,包括姓名、籍贯、公司名称、职位以及您在决策过程中的角色。 树立专业形象,传达出“业务方面,找我就对了”的自…

《数字经济产业链》及其相关公司 —— 深度梳理

《数字经济产业链》及其相关公司 —— 深度梳理 来源:行业研究报告发布时间:2023 年 05 月 22 日 11:07:35(网经社讯)产业链分析 1、产业链概述 2、数字经济行业上游: (1)5G 根据中国信通院、中国移动、中国电信、中国联通、工信部,综合市场公开资料,2025 年中国 5G …

写一个方法检测页面中的所有标签是否正确闭合

function checkTagClosure(htmlString) {// 使用栈来跟踪打开的标签const tagStack = [];// 正则表达式匹配标签 (包括自闭合标签)const tagRegex = /<\/?([a-zA-Z][a-zA-Z0-9]*)\s*\/?>/g;let match;while ((match = tagRegex.exec(htmlString)) !== null) {const tag…

【api开发】API通信协议总结

API协议 1. REST(Representational State Transfer) 一种用于设计网络应用程序的架构风格。它强调无状态通信,使用标准的HTTP方法(GET、POST、PUT、DELETE),并通过URL识别资源。 2. GraphQL 一种API查询语言,允许客户端精确请求它们所需的数据,不多也不少。这种效率是G…

你有使用过picture标签吗?说说它有哪些运用场景

是的,我了解 <picture> 元素。它是一个 HTML5 元素,用于为不同的屏幕尺寸、设备像素比或文件格式提供不同的图像版本。浏览器会根据当前环境选择最合适的图像显示,从而优化页面加载速度和用户体验。 <picture> 元素本身并不显示图像,而是充当一个容器,其中包含…

小米10ultra ISO12233 主摄OV48C 不同亮度下比较

夜间室内几乎完全黑的环境 结论 1200w像素,没啥差别,吃满像素。4800w像素,也没啥区别 IMG_20241129_022234.HEIC 仅有闪光灯 质量 低 1.49MB 1/50s IMG_20241129_022238.HEIC 头灯补光 质量 低 1.65MB 1/100s 34 38 4800w像素 IMG_20241129_022250.HEIC 4800w像素 质量低…

Git 快速入门:全面了解与安装步骤

Git 是一个开源的分布式版本控制系统,由 Linus Torvalds 于 2005 年创建,最初是为了更好地管理 Linux 内核开发而设计。Git用于跟踪计算机文件的变化,特别是源代码文件。它允许多个开发者同时合作开发软件项目,同时保留完整的版本历史,确保代码的稳定性和可追溯性。一、关…

如何解决 GoPro 13 拍摄 4K HDR 视频过热关机问题 All In One

如何解决 GoPro 13 拍摄 4K HDR 视频过热关机问题 All In One GoPro 过热关机如何解决 GoPro 13 拍摄 4K HDR 视频过热关机问题 All In OneGoPro 过热关机测试条件 室温 20 度 开启 HLG HDR 画面 16:9 分辨率 4K 帧率 60Hz 开启 GPS HyperSmooth: AutoBoost 比特位深: 10-Bit 比…

【模板】堆

【模板】堆 题目描述 给定一个数列,初始为空,请支持下面三种操作:给定一个整数 \(x\),请将 \(x\) 加入到数列中。 输出数列中最小的数。 删除数列中最小的数(如果有多个数最小,只删除 \(1\) 个)。输入格式 第一行是一个整数,表示操作的次数 \(n\)。 接下来 \(n\) 行,每…

FIFO 缓存算法很简单,但也可以聊挺久

作者:秦怀 1 简介 计算机科学领域的任何问题都可以通过增加一个间接的中间层来解决,这句话就是整个计算机软件以及系统设计中的核心思想,而缓存对这一思想的一种实践。 缓存,总归会受到存储空间的限制,当缓存的空间不足的时候,如果在保持一定系统文档的情况下,还能兼顾到…