最新推出的 OpenSilver 3.1 是微软退役的 Silverlight 网络应用程序的重制版,将其七月推出的视觉设计器推广至 Windows 外的其他平台。此外,该版本也支持 .NET 9 和一些 WPF 特定功能。
OpenSilver 于 2021 年 10 月,由一家法国公司 Userware 推出,是对 Sliverlight 的开源和 MIT 许可的重新实现。OpenSliver 将 .NET 和 XAML 代码编译成 HTML5 和 WebAssembly,重新实现标准控件特定的第三方控件。它允许开发者复用传统 Sliverlight 或 XAML 应用而无需推倒重写,OpenSilver 的最新版本为 2024 年 7 月更新的 3.0 版本,其中引入了 Visual Code 上的可视化拖拽 XAML 设计器。
新版本的设计器是以 Visual Studio Code 扩展的形式提供,为 macOS 和 Linux 平台带来了全面的设计器支持。它支持一百多个控件,还添加了用于 UI 创建的 AI 助手,其中 AI 助手需要登录微软账号才能使用。
OpenSilver 3.1 XAML 设计器在 macOS 的 VS Code 中运行(图源:Userware)
除了可视化设计器的跨平台兼容支持,OpenSilver 平台上还有其他的一些变化,其中最重要的是对最近发布的 .NET 9 的全面支持。
目前,OpenSilver 一直在模仿 Silverlight 应用和控件的外观和使用感觉,而新版本中开发者可以在“经典”主题和带有扁平化控件且色彩鲜亮的现代主题之间选择。现代主题还有浅色和深色两个版本。
OpenSilver 3.1 的现代用户界面主题(图源:Userware)
OpenSilver 已经涵盖了相当多的 WPF 代码。Sliverlight 虽然发源自 WPF,但有些 WPF 功能在 Silverlight 和 OpenSilver 中都不支持。在 3.1 版本中,部分功能得到实现。目前,Silverlight 可支持 UniformGrid、x:Static attribute、MultiBinding class 和 DynamicResource 标记扩展。
在 Reddit 上的 dotnet 社区中,OpenSilver 3.1 的发布帖下讨论众多,关注重点在于视频的快节奏和效果。不过,在 OpenSilver 和 XAML 设计器的评论总体还是偏向正面的。
Userware 计划在未来的几项功能中扩展 OpenSilver 的能力,其中包括对 WPF 的完全兼容、MAUI 集成、Blazor 组件的互操作性,以及对 XRSharp.io 框架的全 3D 支持。
OpenSilver 的源码已在 GitHub 上公开,其代码块目前有 1006 个 stars 且被 fork 了 117 次。除 Userware 开发团队外,该项目还有 47 位活跃贡献者。OpenSilver 官网称,依赖该框架的公司有拜耳、TATA、毕马威等等。
原文链接:
OpenSilver 3.1 Brings XAML Cross-Platform Designer(https://www.infoq.com/news/2024/12/opensilver-3-1-xaml/)
评论