如何在 WPF 应用程序中使用 SystemMediaTransportControls?

How to use SystemMediaTransportControls in WPF Application?

有什么方法可以在 WPF 中创建 SystemMediaTransportControls 对象吗?

我按照 this 指南从我的 WPF 应用程序访问 Windows 10 个 API。我可以调用 class 但我无法创建对象。在 UWP-App 中,您可以这样创建它:

SystemMediaTransportControls smtp = SystemMediaTransportControls.GetForCurrentView();

但是通过在 WPF 中调用这个方法,我在这一行得到了一个 "Invalid window handle" 异常。

public partial class MainWindow : Window
{
    SystemMediaTransportControls smtp;

    public MainWindow()
    {
        InitializeComponent();
        //SMTP Einrichten
        smtp = SystemMediaTransportControls.GetForCurrentView();
    }

[...]
}

显然,GetForCurrentView() 在 WPF 中不起作用,但应该使用什么?

桌面应用程序不支持 SystemMediaTransportControls。它只能在 UWP 应用程序中使用。

参见 UWP APIs callable from a classic desktop app,其中说:

If the DualApiPartition attribute is not listed

In this case, the API is not allowed to be called from a classic desktop app. Windows.UI.Xaml.Controls.Button is an example.

SystemMediaTransportControls 没有 DualApiPartition 属性。

我如何知道哪些 API 可用? 您链接的指南部分引用了 UWP APIs available to a packaged desktop app (Desktop Bridge) 的列表,这也没有将 SystemMediatTransportControls 列为可用。