1

我有一个WPF目标应用程序,.NET Core v3.1我正在使用XamlIslands它来显示 Windows 10 UI 组件。为了使用XamlIslands,我必须先将我的应用程序.NET Framework.NET Core.

我将我的自定义UWP组件放入了一个UWP project目标Win10 version 2004,最小版本是1903. 在项目中,我可以使用XamlHostsWPF引用这些自定义组件。UWP

然后,我有一个Desktop Bridge项目,可以打包WPF应用程序,以便能够上传到 Microsoft Store。

该项目编译并正确运行,我什至可以运行打包项目,但是当我尝试创建一个侧面加载的应用程序包时,它给了我以下错误:

Project UWP is not compatible with netcoreapp3.1 (.NETCoreApp,Version=v3.1) / win-x64. Project UWP supports: uap10.0.18362 (UAP,Version=v10.0.18362)
Project UWP is not compatible with netcoreapp3.1 (.NETCoreApp,Version=v3.1). Project UWP supports: uap10.0.18362 (UAP,Version=v10.0.18362)

我尝试将UWP应用程序的最低版本设置为windows 10, build 10240(这是最旧的版本),但出现了相同的错误(当然,更新后的 uap 版本)。

这个答案中,我读到也许我应该创建一个.NET Standard项目?但是没有办法创建WPF应用程序定位.NET Standard

  1. 当我可以构建和运行整个解决方案时,错误消息如何表明该UWP应用程序不兼容?.netcore如果它运行,为什么不能创建一个应用程序包?
  2. 那么我如何创建一个应用程序包,我可以将其上传到商店?
4

1 回答 1

2

如何使用 XamlIslands 和 bridge 打包 WPF (.NET Core) 应用程序?

请参考Host a custom WinRT XAML control in a WPF app using XAML Islands官方文档。根据您的信息,您似乎没有将解决方案配置为针对特定平台,例如 x86 或 x64。以 Any CPU 为目标的项目不支持自定义 WinRT XAML 控件。请不要忘记编辑您的 wpf 项目配置

 <AssetTargetFallback>uap10.0.19041</AssetTargetFallback>

我已经做了一个代码示例,我可以根据上面的步骤制作包,这里是官方代码示例,你可以下载它并测试制作一个包。

于 2021-01-15T14:55:27.020 回答