当前位置: 首页 > news >正文

云访客类似的网站成都装修网

云访客类似的网站,成都装修网,南京网站建设 小程序,品牌网站制作公司Avalonia 是一个基于 .NET 和 Skia 的开源、跨平台 UI 框架#xff0c;支持 Windows、Linux、macOS、iOS、Android 和 WebAssembly。Skia 是一个基于 C 的开源 2D 渲染引擎#xff0c;Avalonia 通过 Skia 自绘 UI 控件#xff0c;保证在全平台具有一致的观感 基于 .NET 的跨…Avalonia 是一个基于 .NET 和 Skia 的开源、跨平台 UI 框架支持 Windows、Linux、macOS、iOS、Android 和 WebAssembly。Skia 是一个基于 C 的开源 2D 渲染引擎Avalonia 通过 Skia 自绘 UI 控件保证在全平台具有一致的观感 基于 .NET 的跨平台 UI 框架还有 Uno Platform 和 MAUI其中 Uno Platform 模板工程资源占用高很多而且比较卡顿MAUI 采用原生控件映射的方式实现跨平台单个平台缺少的控件在所有平台上都不可用所以自带控件很少。在 .NET 跨平台桌面 UI 框架中Avalonia 是比较具有竞争力的选择。当然如果是开发 Windows 平台应用还是建议首选 WPF、WinUI3 和 Winform 尽管 Avalonia 还支持 iOS 和 Android但实际体验下来 性能和资源占用都比较一般并且有各种各样的小毛病如无法跟随深色模式……官方推进的 Native-AOT 据说性能提升明显但明确表示该功能会加入付费计划整体来看不推荐使用。MAUI 虽然也有各种问题但在移动端的开发体验好很多因此对于 .NET 跨全平台 方案笔者建议 桌面端使用 Avalonia UI移动端使用 MAUI Avalonia 桌面端已支持 Native-AOT 且完全免费移动端 Native-AOT 处于测试状态且明确表示将加入付费计划 安装 Avalonia 的安装包括 模板 和 设计预览器 两部分其中模板是包含了 Avalonia、MVVM 等 nuget 包的脚手架设计预览器则类似 WPF 中的 designer 预览页面。首先通过命令行安装模板 dotnet new install Avalonia.Templates根据开发工具安装设计预览器插件Avalonia 在 Visual Studio、Visual Studio Code 和 Jetbrains Rider 均有插件支持。 Visual Studio 拓展 管理拓展 搜索安装 Avalonia for Visuall Studuio 2022 和 Avalonia Template Studio Avalonia for Visuall Studuio 2022包含设计预览器和 xaml 代码补全若使用 Visual Studio 2019 请安装 Avalonia for Visual Studio 2019 Avalonia Template Studio创建项目时提供更加丰富的可视化支持如选择平台Desktop、iOS、Android、WebAssembly、MVVM 工具包Reactive UI、CommunityToolkit.Mvvm等 Visual Studio Code 拓展 搜索安装 Avalonia for VSCode 和 Avalonia Templates Avalonia for VSCode包含设计预览器和 xaml 代码补全 Avalonia Templates支持右键快速创建 Window、UserControl、TemplatedControl、Styles 和 ResourceDictionary Rider 设置 插件 搜索安装 AvaloniaRider 项目创建 Visual Studio 点击创建新项目 搜索 avalonia 模板其中部分模板采用 F# 语言开发 Avalonia C# Project (推荐) 可视化选择平台、MVVM 工具包和特色功能 ReactiveUI可组合的函数式响应式模型-视图-视图模型 MVVM 框架基于响应式扩展Rx来处理事件和数据流将一切视为数据流包括用户输入、属性变化等 优点提供了管理 ViewModel 和属性的生命周期的方法避免内存泄漏缺点需要在 axaml 对应 cs 文件中进行属性绑定、比较繁琐且对于初学者而言学习曲线较陡峭 Community Toolkit由 Microsoft 维护和发布旨在为使用 MVVM 设计模式的应用程序提供一组丰富且易于使用的库 优点组件丰富具有强大的代码生成器上手简单、学习曲线较为平缓缺点暂时没感觉有什么缺点足以覆盖目前笔者的需求 Compiled BindingsAvalonia UI 框架中的一种数据绑定机制它通过编译时检查和优化来提高应用程序的性能和调试体验。与传统的反射绑定不同编译绑定在编译时会检查绑定的属性是否存在从而避免运行时的错误并且可以显著提高性能Embedded SupportMeadow Supppport 点击 Create 完成创建项目结构如下 默认选中的是类库项目无法启动首先选中顶层项目右键设置其为启动项目 点击上方工具栏项目名称即可运行 Avalonia .NET App 桌面端 最小项目脚手架仅包含桌面端必需组件 点击创建项目结构如下 点击运行 Avalonia .NET MVVM App 包含 MVVM 工具包的 桌面端 项目脚手架 View Locator 是 Avalonia 中的视图导航工具负责将 ViewModel 映射至对应 View实际应用中可自己实现。默认的 Locator 实现如下 using System; using Avalonia.Controls; using Avalonia.Controls.Templates; using AvaloniaApplication3.ViewModels;namespace AvaloniaApplication3 {public class ViewLocator : IDataTemplate{public Control? Build(object? param){if (param is null)return null;var name param.GetType().FullName!.Replace(ViewModel, View, StringComparison.Ordinal);var type Type.GetType(name);if (type ! null){return (Control)Activator.CreateInstance(type)!;}return new TextBlock { Text Not Found: name };}public bool Match(object? data){return data is ViewModelBase;}} }点击创建项目架构如下 运行结果 Avalonia Cross Platform Application 包含 MVVM 的 跨全平台 项目脚手架 点击创建项目架构如下 通过上方工具栏可切换启动项目Browser 运行结果如下 Visual Studio Code 资源管理器 Create Avalonia Project 选择模板与 Visual Studio 中的模板略有不同这里的 MVVM 采用 CommunityToolkit.MVVM 不可选择 在资源管理器中可以通过 解决方案资源管理器 查看项目其将 axaml 和 cs 文件折叠在一起看起来比较简洁 此外还支持右键新建多种模板、添加 Nuget 包等操作 选中项目 右键 启动新实例即可开始调试 Rider 新建解决方案 自定义模板参考 Visual Studio 中的模板项目结构 参考内容 [1] Get Started with Avalonia
http://www.hkea.cn/news/14545356/

相关文章:

  • 长春火车站和高铁站是一个站吗智能网站建设公司
  • 模板网站好还是自助建站好wordpress如何自己编辑
  • 无锡市城乡和住房建设局网站北京顺义网站建设
  • 高端手机网站案例营销型网站要素
  • 最大的域名注册网站是那个vue和react可以做pc网站吗
  • 四会建设局网站大良营销网站建设新闻
  • 无锡网站制作优化谷歌网站的主要内容
  • 合肥龙岗医院网站建设网站seo设置是什么意思
  • 沈阳网站设计制作公司浙江响应式网站建设
  • 教育培训机构微网站模板虚拟主机哪里好
  • 丰涵网站建设网站静态代码检查 站长工具
  • 吉林省网站建设安徽休宁建设厅网站
  • 商城手机网站制作凤凰网最新军事新闻
  • 西安网站制作模板免费网站建设下载
  • 宿迁宿城区屠园乡网站建设专业搜索引擎seo技术公司
  • 网站开发核心技术wordpress极简中文主题
  • ps制作网站过程巨鹿县住房与城乡建设厅网站
  • 大学生活网站设计网页开发书籍
  • 企业网站的需求分析上海企业制作网站
  • 桂林做网站建设的公司长沙建站网站模板
  • wordpress全站ajax主题如何通过域名访问网站
  • 开化网站建设公司wordpress 进入
  • 怎么免费建立网站做推广wordpress树形主题
  • 怎么查看vps网站服务器时间404页面模板
  • 兼职做网站平台大连做网站公司排行榜
  • 二级域名做网址导航大全网站手机网站 wap
  • 网站外链带nofollow是什么意思赫章网站建设
  • 丽江网站开发找千素网wordpress自己添加menu
  • 网站评估做的好不好高中做信息技术题网站
  • 网站seo完整的优化方案辛集建设局网站