.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="" Height="">
<StackPanel Margin=""> <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 未来更加好。
.NET Core UI框架Avalonia的更多相关文章
- .NET Core/.NET5/.NET6 开源项目汇总9:客户端跨平台UI框架
系列目录 [已更新最新开发文章,点击查看详细] .NET Core 实现了跨平台,支持在 Windwos.Linux.macOS上开发与部署,但是也仅限于Web应用程序.对于Windows桌面 ...
- 基于 Vue.js 之 iView UI 框架非工程化实践记要 使用 Newtonsoft.Json 操作 JSON 字符串 基于.net core实现项目自动编译、并生成nuget包 webpack + vue 在dev和production模式下的小小区别 这样入门asp.net core 之 静态文件 这样入门asp.net core,如何
基于 Vue.js 之 iView UI 框架非工程化实践记要 像我们平日里做惯了 Java 或者 .NET 这种后端程序员,对于前端的认识还常常停留在 jQuery 时代,包括其插件在需要时就引 ...
- .NET 跨平台框架Avalonia UI: 填坑指北(一):熟悉UI操作
Avalonia 是一个跨平台的 .NET UI 框架,支持 Windows.Linux.Mac OSX... (以及Android IOS soon..) 本篇主要介绍Avalonia开发过程和L ...
- .NET 跨平台框架Avalonia UI: 填坑指北(二):在Linux上跑起来了
上一章回顾: .NET 跨平台框架Avalonia UI: 填坑指北(一):熟悉UI操作 本篇将要阐述 包括但不仅限于Avalonia及所有Windows到Linux跨平台开发 的一些注意事项: 一 ...
- ASP.NET MVC搭建项目后台UI框架—6、客户管理(添加、修改、查询、分页)
目录 ASP.NET MVC搭建项目后台UI框架—1.后台主框架 ASP.NET MVC搭建项目后台UI框架—2.菜单特效 ASP.NET MVC搭建项目后台UI框架—3.面板折叠和展开 ASP.NE ...
- ASP.NET MVC搭建项目后台UI框架—7、统计报表
ASP.NET MVC搭建项目后台UI框架—1.后台主框架 ASP.NET MVC搭建项目后台UI框架—2.菜单特效 ASP.NET MVC搭建项目后台UI框架—3.面板折叠和展开 ASP.NET M ...
- ASP.NET MVC搭建项目后台UI框架—9、服务器端排序
ASP.NET MVC搭建项目后台UI框架—1.后台主框架 ASP.NET MVC搭建项目后台UI框架—2.菜单特效 ASP.NET MVC搭建项目后台UI框架—3.面板折叠和展开 ASP.NET M ...
- 不懂前端的程序员不是好美工——UI框架metronic使用教程——程序员视角
本着不懂前端的程序员不是好美工的观点,所以作为一个仅懂一点前端的程序员,为了成为一个好美工,所以只能用些取巧的方法伪装一下. metronic一个基于bootstrap的响应式的后台管理平台的UI框架 ...
- 【转】谈谈Google Polymer以及Web UI框架的未来
原文转自:http://www.csdn.net/article/2013-05-27/2815450-google-polymer 摘要:开发者Axel Rauschmayer在自己的博客上详解了G ...
随机推荐
- win7 64位wamp2.5无法启动MSVCR110.DLL丢失听语音
从网上下载wampserver2.5 64位的PHP集成环境,根本无法使用,说是丢失了MSVCR110.DLL,然后再网上找了一大堆资料工具都无用,比如下微软的了vcredist_x64,重新卸载安装 ...
- Linux中rpm命令用法听语音
rpm 是红帽(RedHat)软件包管理工具,实现类似于 Windows 中的添加/删除程序功能.下面,就来向大家介绍 rpm 命令的用法. 工具/原料 CentOS 一.rpm常用参数 1 rpm ...
- 邓_phpcms_数据库
phpcms v9 数据表结构 在线版 PHPCMS V9 数据结构 (2010-12-28) 表 1 : v9_admin 管理员表 字段 类型 Null 默认 额外 注释 userid mediu ...
- 【备忘】MVC5 布署在windows2008 IIS7.5 出现的问题解决
MVC5布署到 windows2008 IIS7.5上,发现打不开(404),估计是URL重定向有问题... 本地开发环境是,win8+vs2013,MVC5是vs2013安装好后自带的... 好像记 ...
- [转]CentOS Apache 性能调试!
查看Apache的并发请求数及其TCP连接状态: netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}' 返回结果示例 ...
- BSA Network Shell系列-runcmd/runscript命令
runcmd和runscript ## 1 功能概述 runcmd/runscript:runcmd在一台或多台机器执行Network Shell命令(单个命令),而runscript执行的是脚本,二 ...
- 开发步骤Dubbo、spring mvc、springboot、SSM整合开发步骤
一.Dubbo开发步骤: 链接:https://pan.baidu.com/s/1pMPO1kf 密码:9zaa 第一: 1.创建consumer工程2.在pom.xml文件下添加配置3.添加appl ...
- android新建项目
MinMum Required SDK :最低支持的Android api的版本,你的应用不能在低于这个版本的手机上面运行 Target SDK:你的应用最高支持android api版本 Compi ...
- [译] Linux吃掉了我的内存
英文原文: https://www.linuxatemyram.com/ 作者: Vidar Holen 译者: thinkam 发生了什么? Linux正借用你未使用的内存来做磁盘缓存.这使你的计算 ...
- 【转】shell学习笔记(一)——学习目的性、特殊字符、运算符等
1 学习shell的目的性 写之前我们先来搞清楚为什么要学shell,学习要有目的性 shell简单.灵活.高效,特别适合处理一些系统管理方面的小问题 shell可以实现自动化管理,让系统管理员的工作 ...