摘要
微软已经发布 .NET 11 Preview 6",其中包含多项针对 .NET MAUI 的架构和可靠性改进。此次更新将下一代 CollectionView 实现带到了 Windows 平台,推动 Android Shell 迁移到 handler 模型,提升了 Native AOT 兼容性,并为中断的媒体选择器操作增加了恢复支持。.NET 11 的开发周期部分聚焦于使用平台 handler 和源码生成代码替换旧的 Xamarin.Forms 时代基础设施。此前的预览版本已经将 XAML 源代码生成器设为默认选项,并持续推进裁剪(trimming)以及 CoreCLR" 支持工作。Preview 6 在此基础上进一步推进现代化改造,同时移除了面向 Xamarin.Forms 应用迁移所设计的剩余兼容包之一。最大的 UI 变化是 CollectionView2"(也称为 CV2)登陆 Windows 平台。新的 Windows handler 使用 WinUI 的 ItemsRepeater,使其与 Android、iOS 和 Mac Catalyst 上已经提供的 CV2 实现保持一致。它将 MAUI 的线性布局和网格布局映射到支持虚拟化的 WinUI 布局中,并支持包括分组、选择、页眉和页脚、空视图、吸附、增量加载以及与 RefreshView 集成等功能。Preview 6 还使用标准 MAUI handler 重新实现了 Android 平台上的 Shell"。新的 ShellHandler、ShellItemHandler 和 ShellSectionHandler 替代了基于 renderer 的类,并复用了 FlyoutViewHandler 和 TabbedPage 中共享的组件。微软表示,目前这只是 Android 平台的变化;iOS 和 Mac Catalyst 仍继续使用现有的 Shell renderer。因此,拥有自定义 Shell 行为或依赖 renderer 层的应用程序应该谨慎测试该预览版本。对于混合应用而言,HybridWebView 的 JavaScript 互操作现在使用源码生成器替代反射。这消除了裁剪和 AOT 警告,并允许该控件运行在完全裁剪和 Native AOT 应用程序中。