Net跨平台UI框架Avalonia入门-安装和使用(v11版本)

news2024/11/14 6:01:37

介绍Avalonia v11版本

avalonia v11版本发布了,增加了很多新的功能,Avalonia的扩展也同步升级了。
主要更新内容:

  1. 辅助功能:增加了对各种辅助工具的支持,提高了Avalonia应用程序的可用性。
  2. 输入法编辑器(IME)支持:允许在所有语言中使用屏幕键盘和输入。
  3. 合成渲染器:提供更强大、高效和灵活的图形渲染能力。
  4. WebAssembly(WASM)支持:允许Avalonia应用程序在浏览器中运行,拓宽了平台支持范围。
  5. iOS和Android支持:开发人员可以构建和运行Avalonia应用程序在iOS和Android上。
  6. 富文本支持:能够完全渲染复杂文档,并支持在文本中添加注释、超链接和其他内嵌元素。
  7. 平滑虚拟化:重新设计ItemsControl以提高控件效率和用户体验。
  8. 性能改进:提升应用程序速度和效率。
  9. 增加控件主题、嵌套样式和主题变体:使构建一致美观的用户界面更加容易。
  10. 位图效果:允许应用视觉效果到位图图像。
  11. 3D变换:允许创建令人惊艳的三维效果。
  12. 提前编译和修剪:提高应用程序运行速度并减小应用程序大小。
  13. GPU互操作:提高了渲染性能和视觉效果。
    详细内容见:
    https://github.com/AvaloniaUI/Avalonia/releases/tag/11.0.0

官网:
https://www.avaloniaui.net/

文档:
Avalonia 文档
文档也更新到11版本的文档,目前文档已经支持中文(大部分已经有中文了),并且以前版本的文档也可以查看
在这里插入图片描述

安装

添加扩展,在扩展中搜索avalonia,选择安装“Avalonia for Visual Studio 2022”,目前最新版已经是11.1,这个包依赖“Avalonia Template Studio”,最终会安装两个扩展

在这里插入图片描述

下载完成后,关闭所有的vs,记得保存之后全部关闭,否则安装的时候回强行关闭
在这里插入图片描述

Modify进行安装,两个扩展安装完成
在这里插入图片描述

使用

1.创建项目

选择Avalonia分类,11版本就只有一个可选项目模版
在这里插入图片描述

修改项目名称和位置,然后点击创建
在这里插入图片描述

然后会进入Avalonia创建项目的窗口,进行平台和功能的选择

  1. 平台选择,选择你目标的平台,桌面(Desktop)、Web、Android、IOS,最终生成项目,会根据多个平台生成多个启动项目

在这里插入图片描述

  1. 选择设计模式,就是两个MVVM框架,根据需要选择
    在这里插入图片描述

  2. 选择其他功能

编译绑定、嵌入式支持等等,暂时没用到

在这里插入图片描述

点击Create创建(如果后面的内容不用修改,第一步就可以直接创建)

2.项目结构

创建后会生成多个项目

主项目是一个类库“AvaloniaApp”是通用界面和代码的类库,然后“AvaloniaApp.Android”和“AvaloniaApp.Desktop”是不同平台的启动项目,这个根据选择平台生成不同的项目
在这里插入图片描述

主要的开发就在主项目中进行,里面包含了Views文件夹的界面文件和ViewModels文件夹的vm类,这个可以根据自己习惯调整

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

模型压缩-对模型结构进行优化

模型压缩-对模型结构进行优化 概述 模型压缩通常都是对推断过程而言,训练过程的计算代价通常不考虑,因为GPU可以快速完成任意复杂度模型的训练对于推断过程来说,模型应用才是对于速度敏感的场景多数情况下 希望使用尽可能少的能耗完成京可能…

通俗讲解傅里叶变换

参考:六一礼物:给孩子解释什么是傅里叶变换 牛!不看任何数学公式来讲解傅里叶变换 如何直观形象、生动有趣地给文科学生介绍傅里叶变换? - 知乎 从基说起…… 从数学的角度,提供一个形象有趣的解释。理解傅里叶变换的钥匙是理解基♂,它能让你重新认识世界。 1. 什么是…

概率有向图模型(一)

文章目录 前言概率有向图模型验证回到书中隐马尔可夫模型信念网络朴素贝耶斯 总结 前言 经过前面的复习,我们把李航老师的《统计学习方法》中的监督学习部分回顾了一遍,接下来我们在此基础上,开始学习邱锡鹏老师的《神经网络与深度学习》&am…

02_常见网络层协议的头结构

1.ARP报文的报文结构 ARP首部的5个字段的含义: 硬件类型:值为1表示以太网MAC地址。 协议类型:表示要映射的协议地址类型,0x0800 表示映射为IP地址。 硬件地址长度:在以太网ARP的请求和应答中都是6,表示M…

【LeetCode题目详解】第九章 动态规划part06 完全背的讲解 518. 零钱兑换 II 377. 组合总和 Ⅳ (day44补)

本文章代码以c为例! 动态规划:完全背包理论基础 思路 # 完全背包 有N件物品和一个最多能背重量为W的背包。第i件物品的重量是weight[i],得到的价值是value[i] 。每件物品都有无限个(也就是可以放入背包多次)&#…

QT QScrollArea控件 使用详解

本文详细的介绍了QScrollArea控件的各种操作,例如:新建界面、源文件、布局、进度条宽、进度条高、水平滚动条值、垂直滚动条值、移入事件、移出事件、效果图、其它文章等等操作。 实际开发中,一个界面上可能包含十几个控件,手动调…

Qt creator中项目的构建配置和运行设置

使用 Qt Creator 集成开发环境构建和运行程序是一件非常简单的事情,一个按钮或者一个快捷键搞定全部,大家已经都了解了。但是,这些看起来简单的过程,背后到底发生了什么呢? 点击 Qt Creator 项目模式,可以…

elasticsearch的DSL查询文档

DSL查询分类 查询所有:查询出所有数据,一般测试用。例如:match_all 全文检索(full text)查询:利用分词器对用户输入内容分词,然后去倒排索引库中匹配。例如: match_query multi_ma…

(源码版)2023 年高教社杯全国大学生数学建模竞赛-E 题 黄河水沙监测题一数据分析详解+Python代码

十分激动啊啊啊题目终于出来了!!官网6点就进去了结果直接卡死现在才拿到题目,我是打算A-E题全部做一遍。简单介绍一下我自己:博主专注建模四年,参与过大大小小数十来次数学建模,理解各类模型原理以及每种模…

50etf期权最多能开仓多少手?

50etf期权限仓限额的操作,是为了能更好防范和控制期权交易的风险,无论是期货还是期权,在交易中都有规定的持仓限额,不能超过某个额度,那么50etf期权最多能开仓多少手?下文为你们全面介绍!本文来…

2023高教社杯数学建模E题思路模型 - 黄河水沙监测数据分析

# 1 赛题 E 题 黄河水沙监测数据分析 黄河是中华民族的母亲河。研究黄河水沙通量的变化规律对沿黄流域的环境治理、气候变 化和人民生活的影响, 以及对优化黄河流域水资源分配、协调人地关系、调水调沙、防洪减灾 等方面都具有重要的理论指导意义。 附件 1 给出了位…

项目01—基于nignx+keepalived双vip的负载均衡高可用Web集群

文章目录 一.项目介绍1.拓扑图2.详细介绍 二.前期准备1.项目环境2.IP划分 三. 项目步骤1.ansible部署软件环境1.1 安装ansible环境1.2 建立免密通道1.3 批量部署nginx 2.配置NFS服务器和负载均衡器搭建keepalived2.1 修改nginx的index.html界面2.2 nginx实现七层负载均衡2.4 使…

[LeetCode]栈,队列相关题目(C语言实现)

文章目录 LeetCode20. 有效的括号LeetCode225. 用队列实现栈LeetCode232. 用栈实现队列LeetCode622. 设计循环队列 LeetCode20. 有效的括号 题目 给定一个只包括 (,),{,},[,] 的字符串 s ,判断字符串是否有…

【数据结构与算法系列4】长度最小的子数组

给定一个含有 n 个正整数的数组和一个正整数 target 。 找出该数组中满足其总和大于等于 target 的长度最小的 连续子数组 [numsl, numsl1, ..., numsr-1, numsr] ,并返回其长度**。**如果不存在符合条件的子数组,返回 0 。 示例 1: 输入&…

读书笔记-《ON JAVA 中文版》-摘要24[第二十一章 数组]

文章目录 第二十一章 数组1. 数组特性2. 一等对象3. 返回数组4. 多维数组5. 泛型数组6. Arrays的fill方法7. Arrays的setAll方法8. 数组并行9. Arrays工具类10. 数组拷贝11. 数组比较12. 流和数组13. 数组排序14. binarySearch二分查找15. 本章小结 第二十一章 数组 1. 数组特…

【Spring面试】一、SpringBoot启动优化与Spring IoC

文章目录 Q1、SpringBoot可以同时处理多少请求Q2、SpringBoot如何优化启动速度Q3、谈谈对Spring的理解Q4、Spring的优缺点Q5、Spring IoC容器是什么?作用与优点?Q6、Spring IoC的实现机制是什么Q7、IoC和DI的区别是什么Q8、紧耦合与松耦合的区别&#xf…

算法训练day38|动态规划 part01(理论基础、LeetCode509. 斐波那契数、70. 爬楼梯、746. 使用最小花费爬楼梯)

文章目录 理论基础什么是动态规划动态规划的解题步骤 509. 斐波那契数思路分析代码实现思考总结 70. 爬楼梯思路分析代码实现思考总结 746. 使用最小花费爬楼梯思路分析代码实现 理论基础 什么是动态规划 动态规划,英文:Dynamic Programming&#xff0c…

【虚拟机开不了】linux、centOS虚拟机出现entering emergency mode解决方案

按他的操作输入journalctl之后输入shiftg到日志最后查看报错发现是xfs(dm-0有问题) xfs_repair -v -L /dev/dm-0 reboot解决问题

生信豆芽菜-XGboost构建诊断模型

网址:http://www.sxdyc.com/xgboostBuilds 1、准备数据 训练集表达谱数据 训练集样本分组数据 验证集表达谱数据 验证集样本分组数据 2、提交等待运行结果即可 当然,如果不清楚数据是什么样的,可以选择下载我们的示例数据&#…

PostMan传时间参数一次性发送多次请求

文章目录 1. Date类型的参数, "date": "2023-09-07 22:01:51"格式会报错2. 在Pre-request Script预置时间3. 使用postman一次性发送多次请求 1. Date类型的参数, “date”: "2023-09-07 22:01:51"格式会报错 2. 在Pre-req…