Avalonia 11.1.0-beta1 发布
11.1.0-beta1
Avalonia 是 dotnet 的跨平台 UI 框架,提供灵活的样式系统,支持 Windows、macOS、Linux、iOS、Android 和 WebAssembly 等多种平台。 Avalonia 已经成熟并已做好生产准备,已被 Schneider Electric、Unity、JetBrains 和 GitHub 等公司使用。
Full Changelog: https://github.com/AvaloniaUI/Avalonia/commits/11.1.0-beta1
完整变更日志:https://github.com/AvaloniaUI/Avalonia/commits/11.1.0-beta1
Full API Diff: https://gist.github.com/maxkatz6/a7df42607cc7187b94e2e693ccf15f6d
完整 API 差异:https://gist.github.com/maxkatz6/a7df42607cc7187b94e2e693ccf15f6d
Please install latest dotnet templates.
请安装最新的 dotnet 模板。
Most of new features are still pending updated documentation.
大多数新功能仍在等待更新文档。
You can follow progress on this issue - AvaloniaUI/avalonia-docs#384.
您可以关注此问题的进展 - AvaloniaUI/avalonia-docs#384。
New features 新功能
- Binding markup extension was refactored, and now supports UpdateSourceTrigger!
绑定标记扩展已重构,现在支持 UpdateSourceTrigger! - Tizen backend with Tizen TV support.
Tizen 后端,支持 Tizen TV。 - XAML warnings support, starting with Obsolete and TemplatePart warnings. Configurable via csproj and editorconfig. XAML error reporting is now also improved, not being limited by a single error at a time.
XAML 警告支持,从 Obsolete 和 TemplatePart 警告开始。可通过 csproj 和 editorconfig 配置。 XAML 错误报告现在也得到了改进,不再受一次单个错误的限制。 - New top-level and application services: ILauncher, IInputPane, IActivatableLifetime.
新的顶级和应用程序服务:ILauncher、IInputPane、IActivatableLifetime。 - XY focus with arrow keys and remote DPad is now available.
现在可以使用箭头键和远程 DPad 进行 XY 对焦。 - Global exception handling via Dispatcher UnhandledException and UnhandledExceptionFilter.
通过 Dispatcher UnhandledException 和 UnhandledExceptionFilter 进行全局异常处理。
New and extended controls:
新的和扩展的控件:
- HyperlinkButton is now available.
超链接按钮现已可用。 - MenuItem now supports ToggleType property, including CheckBox and Radio types with radio groups.
MenuItem 现在支持 ToggleType 属性,包括带有单选组的 CheckBox 和 Radio 类型。 - Border now includes a new BackgroundSizing property, allowing customizing transparent border brushes rendering.
边框现在包含一个新的 BackgroundSizing 属性,允许自定义透明边框画笔渲染。 - Many interactive controls were updated to be usable with TV remote control, where only DPad buttons and Space (Select) + Escape (Back) are available.
许多交互式控件已更新为可与电视遥控器一起使用,其中仅 DPad 按钮和 Space(选择)+ Escape(返回)可用。 - NumericUpDown and AutoCompleteBox: MaxLength, InnerLeftContent, and InnerRightContent.
NumericUpDown 和 AutoCompleteBox:MaxLength、InnerLeftContent 和 InnerRightContent。 - WindowNotificationManager was refactored and now can be embedded at any level of the controls tree, not being hardcoded to the top level.
WindowNotificationManager 进行了重构,现在可以嵌入到控件树的任何级别,而不是硬编码到顶层。 - RadialGradientBrush now has separated
RadiusX
andRadiusY
properties that allow absolute and relative values. OldRadius
property is now obsolete.
RadialGradientBrush 现在具有独立的RadiusX
和RadiusY
属性,允许绝对值和相对值。旧的Radius
属性现已过时。
New platform features 新平台功能
Windows 视窗
- DirectComposition rendering mode is now supported for older Windows versions (8.1+)
旧版 Windows 版本 (8.1+) 现在支持 DirectComposition 渲染模式 - It's now possible to add
WndProc
andWindowStyles
callbacks viaWin32Properties
API.
现在可以通过Win32Properties
API 添加WndProc
和WindowStyles
回调。
macOS 苹果系统
TrayIcon
now includesMacOSProperties.IsTemplateIcon
attached property, allowing monochrome icons consistent with macOS system iconsTrayIcon
现在包含MacOSProperties.IsTemplateIcon
附加属性,允许单色图标与 macOS 系统图标一致
Linux
- It's now possible to set
NetWmWindowType
andWmClass
on any window viaX11Properties
attached properties.
现在可以通过X11Properties
附加属性在任何窗口上设置NetWmWindowType
和WmClass
。 - Avalonia now respects XGD accent color spec.
Avalonia 现在遵循 XGD 强调色规范。
Browser 浏览器
StaticWebAssets
SDK is now supported. It brings support for building in .NET Brotli compression and caching. To use this SDK, please recreate the browser project from the new template using the 11.1.0-beta1 version.StaticWebAssets
现在支持 SDK。它支持构建 .NET Brotli 压缩和缓存。要使用此 SDK,请使用 11.1.0-beta1 版本从新模板重新创建浏览器项目。- WebGL2 is now enabled by default.
WebGL2 现在默认启用。
iOS
- Metal rendering mode was implemented and now can be enabled via iOSPlatformOptions.
Metal 渲染模式已实现,现在可以通过 iOSPlatformOptions 启用。 - Physical keyboard and mouse input handling now work.
物理键盘和鼠标输入处理现在可以使用。 - tvOS support was added. 添加了 tvOS 支持。
Android
- Android TV support was added
添加了 Android TV 支持
Breaking Changes 重大变化
- iOS and Android backends now require .NET 8 or newer, as per .NET mobile workloads support timelines.
根据 .NET 移动工作负载支持时间表,iOS 和 Android 后端现在需要 .NET 8 或更高版本。 - Browser backend now also requires .NET 8 or newer, but also has changes to its project structure. We recommend using newer Avalonia templates as a reference, but a migration guide specifically for the browser is also planned.
浏览器后端现在也需要 .NET 8 或更高版本,但其项目结构也发生了变化。我们建议使用较新的 Avalonia 模板作为参考,但还计划专门针对浏览器的迁移指南。
原文来源:https://github.com/AvaloniaUI/Avalonia/releases/tag/11.1.0-beta1