【问题标题】:Is it possible to use UWP APIs in a WPF app?是否可以在 WPF 应用程序中使用 UWP API?
【发布时间】:2015-11-13 12:35:52
【问题描述】:

一个例子是适用于 Windows 10 通用平台的新通知 API。我可以在 WPF 应用程序中使用这组 API 吗?如果有,有什么限制吗?

非常感谢您提供相关文档的链接。

【问题讨论】:

  • 是的。为如此广泛的问题寻求帮助。
  • 这是一个我在网上找不到答案的一般问题。我想为 wpf 应用添加通知支持,但在网络上找不到任何有用的资源。
  • 那么要求“限制”有什么意义呢?只需询问您正在尝试解决的真正问题。
  • 我编辑了我的问题以使限制部分更清晰。

标签: c# wpf windows-10 uwp


【解决方案1】:

可以在 WPF 应用中使用 UWP API。但并非所有 UWP API 都可以在 WPF 应用中使用。

Windows 10 API 可从 PC 软件访问的规则存在例外情况。第一个大例外涉及 XAML UI API。 UWP 中的 XAML 框架与 WPF 中的不同,无论如何,您真的不想混淆它们。

您不能使用的第二组 API 是依赖于应用的 package identity 的 API。 UWP 应用具有程序包标识,而 PC 软件没有。包身份信息可以在应用清单文件中找到。

您如何确定哪些 Windows 10 API 需要程序包标识,哪些不需要?最简单的方法是参考这个MSDN topic

关于如何从 WPF 访问 Windows 10 API,请参考this answer,另请参阅博客Calling Windows 10 APIs From a Desktop Application(请注意博客中引用的名称不对,建议您参考SO中的答案)。

【讨论】:

    【解决方案2】:

    不,你不能——至少现在—— 但是一个名为“Centennial”的项目取得了进展,这将使您能够做到这一点。

    更多见“bridges”。

    是的,现在可以了。
    https://blogs.windows.com/buildingapps/2017/01/25/calling-windows-10-apis-desktop-application/

    【讨论】:

    • 您的帖子已过时。 ;)
    猜你喜欢
    • 2017-01-07
    • 1970-01-01
    • 1970-01-01
    • 2021-08-07
    • 1970-01-01
    • 1970-01-01
    • 2016-04-01
    • 2017-12-14
    • 1970-01-01
    相关资源
    最近更新 更多