.NET Core UI框架Avalonia

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

Avalonia目前处于测试阶段。

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

开发准备

VS 2017安装扩展 https://marketplace.visualstudio.com/items?itemName=AvaloniaTeam.AvaloniaforVisualStudio

然后就可以开发项目

选择 Avalonia Application ,就可以创建一个项目,默认有两个会创建两个框架.NET Framework 4.6.1和.NET Core 2.0。

在项目中可以创建Window 和UserControl。

示例UI项目

新建一个基础项目myapp,将MainWindow.xaml 添加几个按钮,就是WPF XAML 的语法,直接可以实现对应布局。

<Window xmlns="https://github.com/avaloniaui"

        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

        Title="myapp">

    <Grid Width="800" Height="600">

      <StackPanel Margin="20">


        <Button Content="Button1" Name="btn1"/>


        <Button Content="Button2"/>


        <Button Content="Button3"/>

        <TextBox Text="LineZero" Name="myText"></TextBox>


      </StackPanel>

    </Grid>

  </Window>

后台对应代码

public class MainWindow : Window

    {

        public MainWindow()

        {

            InitializeComponent();

#if DEBUG

            this.AttachDevTools();

#endif

        }


        private void InitializeComponent()

        {

            AvaloniaXamlLoader.Load(this);

            this.FindControl<Button>("btn1").Click += Btn1_Click;

        }


        private void Btn1_Click(object sender, Avalonia.Interactivity.RoutedEventArgs e)

        {

            var txt = this.FindControl<TextBox>("myText");

            txt.FontFamily = "微软雅黑";

            txt.Text = "LineZero 按钮1";

        }

    }


运行程序

默认情况下中文显示有点问题,设置字体既可。

不同系统的支持安装: https://github.com/AvaloniaUI/Avalonia/wiki/Platform-support

 

AvalonStudio

目前Avalonia 比较成熟的一个方案。

GitHub: https://github.com/VitalElement/AvalonStudio

目前官方介绍是有对应功能,实际操作有些缺少。

AvaloniaEdit.Demo 也是还算不错的示例。

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

可以查看官方文档:http://avaloniaui.net/guides/   .NET Core 未来更加好。

原文:https://www.cnblogs.com/linezero/p/Avalonia.html


.NET社区新闻,深度好文,欢迎访问公众号文章汇总 http://www.csharpkit.com

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

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

相关文章

揽货最短路径解决方案算法 - C# 蚁群优化算法实现

需求为&#xff08;自己编的&#xff0c;非实际项目&#xff09;&#xff1a;某配送中心进行揽货&#xff0c;目标客户数为50个客户&#xff0c;配送中心目前的运力资源如下&#xff1a;现有车辆5台单台运力最大行驶距离200千米单台运力最大载重公斤1吨问&#xff1a;运力怎样走…

OIDC在 ASP.NET Core中的应用

我们在《ASP.NET Core项目实战的课程》第一章里面给identity server4做了一个全面的介绍和示例的练习 。如果想完全理解本文所涉及到的话题&#xff0c;你需要了解的背景知识有&#xff1a;什么是OpenId Connect (OIDC)OIDC 对oAuth进行了哪些扩展&#xff1f;Identity Server4…

论文阅读:Blind Super-Resolution Kernel Estimation using an Internal-GAN

这是发表在 2019 年 NIPS 上的一篇文章&#xff0c;那个时候还叫 NIPS&#xff0c;现在已经改名为 NeurIPS 了。文章中的其中一个作者 Michal Irani 是以色 Weizmann Institute of Science (魏茨曼科学研究学院) 的一名教授&#xff0c;对图像纹理的内在统计规律有着很深入的研…

【ASP.NET Core】处理异常

依照老周的良好作风&#xff0c;开始之前先说点题外话。前面的博文中&#xff0c;老周介绍过自定义 MVC 视图的搜索路径&#xff0c;即向 ViewLocationFormats 列表添加相应的内容&#xff0c;其实&#xff0c;对 Razor Page 模型&#xff0c;也可以向 PageViewLocationFormats…

树莓派3B上部署运行.net core 2程序

针对Linxu arm处理器如何部署.net core 2的资料很少&#xff0c;网上找到几篇但都写得不够详细&#xff0c;按照他们教程来撞墙了&#xff0c;折磨了几天终于部署成功了&#xff0c;先上一张运行成功的图1.windows系统中&#xff0c;在项目的目录下使用CMD命令运行进行发布dotn…

拥抱.NET Core系列:MemoryCache 初识

MSCache能做什么&#xff1f;绝对过期支持滑动过期支持&#xff08;指定一个时间&#xff0c;TimeSpan&#xff0c;指定时间内有被Get缓存时间则顺延&#xff0c;否则过期&#xff09;过期回调自定义过期MSCache目前最新的正式版是 2.0.0&#xff0c;预览版是2.1.0&#xff0c;…

Spark Structure Streaming(一)之简介

一、Structure Streaming 结构化流是基于Spark SQL引擎构建的可伸缩且容错的流处理引擎。可以像对静态数据进行批处理计算一样&#xff0c;来表示流计算。 当流数据继续到达时&#xff0c;Spark SQL引擎将负责递增地&#xff0c;连续地运行它并更新最终结果。可以在Scala&…

Ocelot中使用Butterfly实践

Ocelot(https://github.com/TomPallister/Ocelot)是一个用.net core实现的API网关&#xff0c;Butterfly(https://github.com/ButterflyAPM/butterfly)是用.net core实现的全程序跟踪&#xff0c;现在&#xff0c;Ocelot中可以使用Butterfly了&#xff0c;关于Ocelot和Butterfl…

jzoj6290-倾斜的线【计算几何,贪心】

正题 题目大意 有nnn个点&#xff0c;将两个点连成线&#xff0c;求斜率最接近PQ\frac{P}{Q}QP​的线。 解题思路 我们有一个结论&#xff1a;若我们对于每一个点做一条斜率为PQ\frac{P}{Q}QP​的线&#xff0c;然后按截距排序&#xff0c;然后答案必定是相邻的点。 证明: 我…

Java 平台调试架构JPDA

转载自 Java-JPDA 概述 JPDA&#xff1a;Java 平台调试架构&#xff08;Java Platform Debugger Architecture&#xff09; 它是 Java 虚拟机为调试和监控虚拟机专门提供的一套接口。 一、JPDA https://docs.oracle.com/javase/8/docs/technotes/guides/jpda/ JPDA 由三个…

Ocelot + Consul实践

关于Consul(https://www.consul.io)是一个分布式&#xff0c;高可用,支持多数据中心的服务发现和配置共享的服务软件,由 HashiCorp 公司用 Go 语言开发, 基于 Mozilla Public License 2.0 的协议进行开源。 在Consul的文档上&#xff0c;Consul 支持Service Discovery, Health …

Arthas - 开源 Java 诊断工具

转载自 Arthas使用 Authas — 开源的java诊断工具 下载安装 authas是一个jar包&#xff0c;可以直接下载后运行 wget https://alibaba.github.io/arthas/arthas-boot.jarjava -jar arthas-boot.jar就可以启动起来。启动后&#xff0c;authas会自动检测存在的java进程&…

jzoj6307-安排【归并排序】

正题 题目大意 一个目前序列&#xff0c;一个目标序列&#xff0c;每次可以选择一个区间交换区间最大值和最小值。 询问在345678345678345678步内将目前序列转换回目标序列的方案(输出该方案)。 解题思路 我们考虑归并排序&#xff0c;对于两个升序的序列&#xff0c;我们考…

.NET Core 2.1 Preview 1发布:更快的构建性能

今天&#xff0c;我们宣布发布 .NET Core 2.1 Preview 1。这是 .NET Core 2.1 的第一个公开发布。我们有很大的改进希望分享出来&#xff0c;并且渴望得到您的反馈意见&#xff0c;无论是在评论中还是在github中dotnet/core #1297ASP.NET Core 2.1 Preview 1 和 Entity Framewo…

Spark SQL(七)之基于用户的相似度公式

一、基于用户的Jaccard相似度公式 其中&#xff0c;u、v表示任意两个用户&#xff0c;N(u)表示用户u喜欢的物品集合,N(v)表示用户v喜欢物品的集合。 代码 public class UserCFApp {public static void main(String[]args){SparkConf sparkConf new SparkConf();sparkConf.se…

欢乐纪中A组赛【2019.8.17】

前言 前几天题目没改完(好难QvQQvQQvQ)&#xff0c;然后这几天ZZYZZYZZY和WHFWHFWHF去广州二中了 然后我是菜鸡&#xff0c;今天暴力写挂了QAQQAQQAQ&#xff0c;T2T2T2少判断了个东西少了808080 成绩 懒得写只放自己的了(反正垫底) Rank51,20ptsRank51,20ptsRank51,20pts 正…

BXUG第11期活动

分享主题&#xff1a;Xamarin Azure 微软云加端移动应用技术架构分享者&#xff1a;周岳 微软MVP分享主题&#xff1a;从设计图到最终界面- Xamarin跨平台界面最佳实践分享者: 程文锋 视高盛景分享主题&#xff1a;基于VSTS的App DevOps分享者&#xff1a; 安庭庭 张浩 视高…

Spark SQL(八)之基于物品的相似度公式

一、基于物品的Jaccard相似度公式 其中&#xff0c;i、j表示任意两个物品&#xff0c;N(i)表示喜欢物品i的用户数&#xff0c;N(j)表示喜欢物品j的用户数。 代码&#xff1a; public class ItemCFApp {public static void main(String[]args){SparkConf sparkConf new Spark…

ASP.NET CORE MVC 实现减号分隔(Kebab case)样式的 URL

ASP.NET CORE MVC 中&#xff0c;默认的 Route 模板是&#xff1a; /{controller}/{action} 。我们可以通过开启 URL 小写转换将 URL 变为小写&#xff0c;但此方式在 Controller 或者 Action 为一个词组时&#xff0c;生成的 URL 并不友好。假设我们有 UserController 和 Add…

Spark SQL(九)之基于用户的推荐公式

一、基于用户的推荐公式 其中&#xff0c;S(u,K)表示与用户u最相似的K个用户&#xff0c;N(i)代表喜欢物品i的用户集合&#xff0c;rm表示用户v对物品i的评分。 二、代码 public class UserCFRecommendApp {public static void main(String[]args){SparkConf sparkConf new S…