写点什么

Avalonia Beta 1 对 WPF 做了很多改进

  • 2018-03-20
  • 本文字数:886 字

    阅读完需:约 3 分钟

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

Avalonia 将自己定义为“基于 WPF(使用 XAML 、数据绑定以及 lookless 控件等)的跨平台.NET UI 框架。”在第一版公测之后,Avalonia 已经展现了它在旧版WPF XAML 上的有趣改进。

传统XAML 开发的主要烦恼之一是需要创建 ICommand 对象。除非你需要 CanExecute 功能,否则 ICommand 本质上只是一个普通方法的包装程序。而且,这些对象的创建经常会导致大量不必要的样板代码出现在视图模型中。更糟糕的是,数据模型要么暴露这个以 UI 为中心的概念,要么被隐藏在视图模型样式代理的后面。

Avalonia 提供了一个相当明显且简单的解决方案,用户控件上的命令可以直接与方法做数据绑定。如果需要的话,Avalonia 仍然支持 ICommands,但是大多数时候可以忽略 ICommands。

Avalonia 提供的另一个节省时间的方法是对Relative Sources 类的语法支持,使得语句不再那么冗长。比如“{Binding Text, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Border} AncestorLevel=1}}" 你可以写成"{Binding $parent.Text}”。

新预览架构

由于Avalonia 是跨平台的,同样地,它也需要跨平台的开发工具。这种工具一旦成为新的预览架构,那么,与.NET 使用的语言服务器协议一样,预览器将作为一个单独的进程运行。默认情况下,Avalonia 将提供一个已呈现的、通过TCP 传输的位图的IDE。为了使用这个新协议,AvaloniaVS 扩展已经做了相应更新,同时它现在也希望其他IDE 设计者尽快出现!

入门指南

如果你在Windows 上使用Visual Studio,那么针对Visual Studio 扩展版本的Avalonia 提供了必需的工具和项目模板。对于其他平台,你可以使用针对.NET Core 的Avalonia 模板

Avalonia 是在 MIT 的许可下发布的,它正在寻找能够为这个项目贡献时间的开发人员

查看英文原文: Avalonia Beta 1 Brings Many Improvements over WPF


感谢冬雨对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2018-03-20 19:002290
用户头像

发布了 21 篇内容, 共 13.9 次阅读, 收获喜欢 14 次。

关注

评论

发布
暂无评论
发现更多内容

农产品电商平台的S曲线分析

石云升

增长 S型曲线 破局点

如何搭建一个Zookeeper集群

Rayjun

大数据 zookeeper 分布式

面试中必问的JVM应该怎么学(面试题含答案)

猿灯塔

计算机操作系统基础(十一)---线程同步之互斥量

书旅

php laravel 线程 操作系统 进程

今天来聊聊如何挑书

封不羁

读书 个人感想

区块链+金融赋能高原特色农业重点产业

CECBC

打破信息孤岛 区块链+咖啡 特色农业 咖云链

程序员阿里、京东、美团面试整理的面试题,测试一下你都会了吗?

小谈

Java 阿里巴巴 面试

1.2w字 | 初中级前端 JavaScript 自测清单 - 1

Geek_z9ygea

Java 大前端 Web

专科程序员与本科程序员之间有什么区别?薪资待遇又差多少?

码农月半

spring 程序员 面试

授权专利争夺正当时

CECBC

数据隐私 授权专利 平台应用服务

ConcurrentHashMap里面也有死循环

无予且行

Java jdk 面试 jdk8

什么时候不要用微服务?以 Istio 为例

无予且行

Java 微服务 后端

面试官:既然CPU有MESI,为什么 JMM 还需要volatile关键字?

犬来八荒

Java 面试 JVM 硬件

spring 那点事儿——让你少走弯路

爱java爱自己

Spring Cloud Spring Boot

如何站在架构师的角度做框架

小新

Java 集合 框架

为什么建议项目中统一线程池类?

张挺

cms项目系列(一)——SSM框架搭建

程序员的时光

spring

你真的理解透彻高并发了吗?来看看架构师眼里的高并发

小谈

Java 面试 高并发 高并发系统设计

架构师训练营第五周学习总结

张明森

编程核心能力之组合

顿晓

Java 学习 pipe

【思考】互联网厂商争夺企业市场

superman

企业中台 互联网

Java架构-Apache POI Excel

猿灯塔

在Windows上使用IIS来托管站点

Puran

windows IIS Server

架构师训练营 -week5 命题作业

J.Smile

极客大学架构师训练营

架构师训练营 第 5 周作业

Lingjun

极客大学架构师训练营

饿了么4年,阿里2年:我的总结与思考

程序员生活志

工作经验

SQLite你用对了吗

山楂大卷

sqlite 数据库 选型

解读 java 并发队列 BlockingQueue

猿灯塔

Java

源码分析 | 数据异构Canal 初探

小新

PHP实现一致性哈希算法

任小龙

80%会问到的18个Dubbo面试题,快来看看你都掌握了吗

小新

Java 程序员 架构 面试 dubbo

Avalonia Beta 1对WPF做了很多改进_.NET_Jonathan Allen_InfoQ精选文章