Windows 应用 SDK 1.3 的稳定频道发行说明

稳定通道提供适用于生产环境应用的 Windows 应用 SDK 版本。 使用 Windows App SDK 稳定版本的应用还可以发布到 Microsoft Store。

重要链接

最新的稳定频道版本:

下载 Windows App SDK

注释

Windows App SDK Visual Studio 扩展 (VSIX) 已不再作为单独的下载进行分发。 它们可在 Visual Studio 内的 Visual Studio Marketplace 中使用。

版本 1.3.3 (1.3.230724000)

这是 Windows 应用 SDK 的服务版本,其中包括 1.3 版本的严重 bug 修复。

  • 修复了关闭对话框时鼠标有时会停止工作的问题。
  • 修复了由于系统上包版本不匹配而阻止应用安装的部署问题。 有关详细信息,请参阅 GitHub 问题 #3740
  • 修复了影响 Windows App SDK 1.3 中的上下文菜单定位的问题。
  • 修复了这样一个问题,即在某些情况下,由于 XAML 过早关闭,导致一些 WinUI3 应用在关闭时崩溃。
  • 修复了字体图标在从右到左的语言中无法正确镜像的问题。 有关详细信息,请参阅 GitHub 问题 #7661
  • 修复了在资源按错误顺序被拆毁时导致应用在关闭时崩溃的问题。 有关详细信息,请参阅 GitHub 问题 #7924

版本 1.3.2 (1.3.230602002)

这是 Windows 应用 SDK 的服务版本,其中包括 1.3 版本的严重 bug 修复。

  • 修复了设置受保护的游标时的崩溃。
  • 修复了应用启动期间 XamlMetadataProvider 中的性能问题。 有关详细信息,请参阅 GitHub 问题 #8281
  • 修复了 RichTextBlock 中的超链接和触摸问题。 有关详细信息,请参阅 GitHub 问题 #6513
  • 修复了 WebView2 中滚动和触摸板的问题。 有关详细信息,请参阅 GitHub 问题 #7772
  • 修复了 Windows 应用 SDK 更新有时需要重启 Visual Studio 的问题。 有关详细信息,请参阅 GitHub 问题 #3554
  • 修复了调试器中运行时关闭时的干扰异常。

版本 1.3.1 (1.3.230502000)

这是 Windows 应用 SDK 的服务版本,其中包括 1.3 版本的严重 bug 修复。

  • 修复了当设置 SystemBackdrop(如果内容为 null)时导致应用崩溃的问题。 有关详细信息,请参阅 GitHub 问题 #8416
  • 修复了在 XAML 中设置窗口标题时导致应用崩溃的问题,这是 1.3.0 中添加的新功能。 有关详细信息,请参阅 GitHub 问题 #3689
  • 修复了窗口在内容更改时错误获得焦点的问题。
  • 修复了使用 WinAppSDK 1.3 项目模板创建C++项目的问题。
  • Visual Studio Marketplace 上更新的模板

版本 1.3 的新增和更新功能及已知问题

以下部分介绍版本 1.3 的新增功能和更新的功能和已知问题。

在现有的 Windows 应用 SDK 1.2 应用中,可以将 Nuget 包更新为 1.3.230331000(请参阅使用 NuGet 包管理器在 Visual Studio 中安装和管理包的“更新包”部分)。

有关更新的运行时和 MSIX,请参阅 最新的 Windows 应用 SDK 下载

XAML 背景 API

借助内置于 XAML 窗口的属性,Mica 和 Background Acrylic 背景现在更易于在 WinUI 3 应用中使用。 有关 Xaml 背景属性的详细信息,请参阅 系统背景Mica 背景 API 文档。

public MainWindow()
{
    this.InitializeComponent();

    this.SystemBackdrop = new MicaBackdrop();
}

窗口.App窗口

通过替换多行样板代码,现在可以通过窗口Window.AppWindow直接使用 AppWindow API。

WinAppSDK 各个部分的新功能

  • ApplicationModel.DynamicDependencyPackageDependency.PackageGraphRevisionId 用于替换已弃用的 MddGetGenerationId。
  • 环境管理器:EnvironmentManager.AreChangesTracked 将告知您是否可以在您的应用程序中跟踪对环境管理器的更改。
  • 当无法解析引用的静态资源或主题资源查找时,现在将引发新事件 DebugSettings.XamlResourceReferenceFailed。 此事件允许访问某个跟踪,该跟踪详细说明了框架为搜索该键而查找的位置,以便于更好地调试 Static 和 ThemeResource 的查找失败。 有关详细信息,请参阅 GitHub 上的 跟踪 XAML 资源参考查找失败 API 规范。

其他更新

  • 有关此版本中解决的其他问题,请参阅 WinAppSDK GitHub 上的 WinAppSDK 1.3 里程碑
  • 有关此版本中解决的其他问题,请参阅 microsoft-ui-xaml GitHub 上的 winAppSDK 1.3 里程碑 中的 WinUI 3。
  • 使用最新的实验性 VSIX,现在可以通过 Visual Studio 菜单在未打包和打包状态之间转换应用程序,而无需在项目文件中操作。

已知问题

由于对 xaml 编译器最近的更改,升级到 1.3 的现有项目可能会遇到如下 Visual Studio 中的生成错误:

> C:\Users\user\\.nuget\packages\microsoft.windowsappsdk\\**1.3.230331000**\buildTransitive\Microsoft.UI.Xaml.Markup.Compiler.interop.targets(537,17): error MSB4064: The "PrecompiledHeaderFile" parameter is not supported by the "CompileXaml" task loaded from assembly: Microsoft.UI.Xaml.Markup.Compiler, Version=1.0.0.0, Culture=neutral, PublicKeyToken=de31ebe4ad15742b from the path: C:\Users\user\\.nuget\packages\microsoft.windowsappsdk\\**1.2.230118.102**\tools\net472\Microsoft.UI.Xaml.Markup.Compiler.dll. Verify that the parameter exists on the task, the <UsingTask> points to the correct assembly, and it is a settable public instance property.

这是由 Visual Studio 使用来自 1.2 的缓存 xaml 编译器任务 DLL 引起的,但该 DLL 被 1.3 的不兼容 MSBuild 逻辑驱动,如上方错误信息所示。 解决方法是关闭 Visual Studio,重启它,然后重新加载解决方案。