QCon北京「鸿蒙专场」火热来袭!即刻报名,与创新同行~ 了解详情
写点什么

Microsoft 标准化了跨 UWP 和 Xamarin 的 XAML

  • 2017-05-23
  • 本文字数:1235 字

    阅读完需:约 4 分钟

Microsoft在BUILD 2017 大会上宣布公开 XAML 标准首个草案。XAML 是一种标记方言(dialect),意在统一用户接口组件的定义方式。

Microsoft 想要统一部分已有的 XAML 语言,它计划能在今年稍后给出 XAML 1.0 版本。 该标准建立后,Microsoft 规划进一步给出支持该标准的 UWP 和 Xamarin.Forms,使得在两个框架间可以共享 UI 定义。

目前该草案中定义的控件包括:Button、TextBlock、TextBox、ComboBox、Grid、StackPanel、Page 和 UserControl。上述控件都包括了一系列的属性,例如 Margin、HorizontalAlignment、VerticalAlignment、 Height 和 Width 等,一些控件还支持多种字体属性。上面并未列出该标准所支持的所有控件,还有不少其它控件和属性得到了请求(Request),并在该项目的议题(Issue)中得以批准,例如 Image、Border、WebView、Slider、ProgressBar 等。基于目前为止所建议的控件名称,看上去 XAML/UWP 将被用作参考,而不是作为 Xamarin 所使用的方言。

按 Microsoft 的说法,开发人员可以继续按以前的方法创建 UWP 和 Xamarin.Forms 应用,随后这些应用“将可在架构间重用和共享,并可扩展到更多的平台上”。此外:

当前开发人员无需做任何更改,可以继续在这两个平台上像往常一样调用同一 API。XAML 标准有助于开发人员重用和共享所有在用户端间共享的通用 UI 代码。

目前该标准的审查专家(Review Board)是由来自 UWP 和 Xamarin.Forms XAML 团队中的代表组成。但是如果未来有新的标准实现者出现,有计划会进一步扩展专家团队。专家们同时指出,“并非所有的XAML API 都会成为XAML 标准的一部分”。一个使用了XAML 的重要技术就是WPF。作为一名.NET 开发人员, Morten Nielsen 参与了周五的 BUILD 大会问答环节,并向 Microsoft 的 Windows 开发者平台副总 Kevin Gallo 提问了 Microsoft 对于 WPF 的未来规划。据Nielsen 说,Gallo 当时给出的回答是:“我们并未规划向WPF 中添加新的XAML 标准功能”。对此Nielsen 补充道:“我认为这类似于宣布‘WPF 已死’,正如你也感觉到的”。另一位开发人员 Bastian Schmidt 谈及了同一话题:“如果Microsoft 决定在标准中剔除WPF,Microsoft 必须发布终结WPF 的正式声明。”

Shaun Tonstad 给出了一种可能的解决方案,他将 WPF 应用转化到 UWP 上,因此无需标准提供对 WPF 的支持:

通过努力,我们实现了将 WPF 和 Silverlight 应用转换到 UWP 上。虽然标准能提供对 WPF 的支持也是一件好事,但是如果兼容 WPF 妨碍了实现用于 UWP 的跨平台 XAML,这是却我所不愿意看到的。无论大家如何看待 WPF,UWP 已经存在了,最好就是从 UWP 开始构建跨平台的互操作。

即使 Microsoft 正式声明终结 WPF(如果他们最终这样做的话),XAML 标准依然是向前迈进了一步,它统一了用于定义应用用户接口的语言,这些应用可以跨 UWP 和 Xamarin.Forms 运行,其中 Xamarin.Forms 被用于创建可在 iOS、Android 和 Windows Phone 上运行的应用。

查看英文原文: Microsoft Standardizes XAML Across UWP and Xamarin

2017-05-23 19:001786
用户头像

发布了 227 篇内容, 共 77.9 次阅读, 收获喜欢 28 次。

关注

评论

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

面试官:说说MVCC的执行原理?

王磊

Java 面试

软件测试/测试开发|Linux三剑客之——awk命令详解

霍格沃兹测试开发学社

软件测试/测试开发|web基础知识介绍

霍格沃兹测试开发学社

领跑 AI 时代,龙蜥操作系统大会如约而至

OpenAnolis小助手

开源 操作系统 龙蜥社区 开放原子

混合专家模型 (MoE) 详解

不在线第一只蜗牛

前端 低代码 开发 框架

程序员如何高效学习技术?

伤感汤姆布利柏

开源 程序员 低代码 Java技术提升程序员

海外云手机——跨境电商必备神器

Ogcloud

云服务 跨境电商

万界星空科技数字化车间应用场景

万界星空科技

数字化 工业互联网 智能工厂 mes 数字化车间

什么是制造业的数字化车间

万界星空科技

数字化转型 数字化 MES系统 云mes 万界星空科技mes

使用 extract + TextMapAdapter 实现了自定义 traceId

观测云

Trace 链路

软件测试/测试开发|一篇文章带你入门HTML

霍格沃兹测试开发学社

2023-12-27:用go语言,店铺数量n,编号1~n, 人的数量m,编号1~m, 每个人有自己投票的店铺p,和改投1号店的报价x。 返回想让1号店铺成为人气最高的店,至少花多少钱? 1 <= p,

福大大架构师每日一题

福大大架构师每日一题

「悦数图数据库」获 2023 年度 IT168 创新解决方案奖

悦数图数据库

图数据库 图数据库实战

为什么要运营海外社媒?海外云手机能发挥什么作用?

Ogcloud

短视频 社交媒体

库克透露苹果已有接班人计划,或从这四人中诞生;谷歌创始人亲自给 Gemini 写代码丨 RTE 开发者日报 Vol.114

声网

云图说|有了这2招必杀技,你的主机“身陷重围”都不怕!

华为云开发者联盟

云计算 华为云 主机安全 华为云开发者联盟 华为云HSS

软件测试/测试开发|关于bug,你需要了解的,全在这里了

霍格沃兹测试开发学社

软件测试/测试开发丨接口学习笔记-session、cookie、token的区别

测试人

软件测试 测试开发

AI 领域代币市场趋势:探索最热门投资领域的前沿动向

Footprint Analytics

区块链 AI

Microsoft标准化了跨UWP和Xamarin的XAML_.NET_Abel Avram_InfoQ精选文章