如何在WPF窗口中使用WinRT SwapChainPanel控件?

如何在WPF窗口中使用WinRT SwapChainPanel控件?,wpf,winapi,windows-runtime,winrt-xaml,direct-composition,Wpf,Winapi,Windows Runtime,Winrt Xaml,Direct Composition,我在WPF项目中添加了对WinRT DLL的引用,我想在WPF窗口中使用SwapChainPanel。 真的有可能吗?目前我还不能让它工作。它目前还没有得到官方支持-可能需要Windows中的一些私有API,尽管Stardock可以实现它的ModernMix-可能有一些方法可以让它工作。但问题是,你不必这么做。您可以使用DirectX以其他方式将内容呈现到WPF窗口。我还没有做到这一点,这可能需要做很多工作,但DirectX中的任何东西都是如此。你可以在课堂上观察。也许这篇关于使用的文章是一个很

我在WPF项目中添加了对WinRT DLL的引用,我想在WPF窗口中使用
SwapChainPanel

真的有可能吗?目前我还不能让它工作。

它目前还没有得到官方支持-可能需要Windows中的一些私有API,尽管Stardock可以实现它的ModernMix-可能有一些方法可以让它工作。但问题是,你不必这么做。您可以使用DirectX以其他方式将内容呈现到WPF窗口。我还没有做到这一点,这可能需要做很多工作,但DirectX中的任何东西都是如此。你可以在课堂上观察。也许这篇关于使用的文章是一个很好的示例解决方案。

你不必像菲利普·斯卡昆所说的那样,但是你可以!只需尝试一下SlimDXSharpDX。它们是DirectX在C#中的实现。

的NuGet包说明提到了
SwapChainPanel
,但我在WPF中没有找到任何使用此控件的示例

SwapChainPanel:提供一个宿主界面,Microsoft DirectX交换链在其中提供可以呈现到XAML UI中的内容。SwapChainPanel元素是应用程序的关键组件,该应用程序呈现Microsoft DirectX图形,然后在XAML页面中呈现这些视觉效果


我认为SlimDX或SharpDX不允许您将WinRT
SwapChainPanel
控件放入WPF应用程序。它们是DirectX的C#wrapper,虽然它们可能有很容易在窗口中托管的帮助器类或控件,但这并不是问题的关键所在。此外,还有另一个DirectX 10-11托管包装器,我在不久前帮助构建了该包装器,该包装器在Direct2D文章中使用。我不确定它会有多长时间可用,但是因为代码库页面正在退出。。。明天?:)这是我知道的最好的方法。有一个交换链。