在WPF应用程序中使用WinRT库

本文关键字:WinRT WPF 应用程序 | 更新日期: 2023-09-27 18:28:13

我在这里关注了这篇文章:http://blogs.msdn.com/b/eternalcoding/archive/2013/10/29/how-to-use-specific-winrt-api-from-desktop-apps-capturing-a-photo-using-your-webcam-into-a-wpf-app.aspx

一切都很好。。。但是如何在WPF中预览?

XAML"CaptureElement"控件在WPF中不可用。有没有其他方法可以让我使用MediaCaptureneneneba API预览?

为什么Microsoft不提供此控件?

在WPF应用程序中使用WinRT库

回复很晚,但如果这对未来的人们有帮助:在WPF中预览MediaCapture很困难,但也是可能的。以下是一些代码示例:https://github.com/mmaitre314/MediaCaptureWPF

经过进一步研究,似乎不可能将其用于WPF中的XAML捕获元素或任何其他XAML元素。

我决定将我的WPF应用程序移植到Win8应用程序。我保留了现有的后端代码,并使用代理WinRT组件引用了它。一个优秀的教程可以在这里找到:http://devhawk.net/2014/04/25/brokered-winrt-components-step-one/关于如何创建WinRT代理组件。

请记住,该应用程序必须侧载,并且不适用于要发布到存储的应用程序。

您必须自己设置一个机制来显示转换后的BitmapImage,例如,在Image控件中或在某个曲面上显示为ImageBrush。据我所知,WinRT控件不能托管在WPF中。

CaptureElement可能没有移植到WPF,因为它依赖于WinRT API,并且在WPF中引入仅在Windows 8+上可用的API的依赖关系是没有意义的,并且仅在Windows应用商店应用程序中正式支持。