【发布时间】:2019-08-09 23:29:57
【问题描述】:
我希望能够从 winforms 应用程序调用 UWP 类 Windows.Media.Capture.CameraCaptureUI。
我一直在研究 Microsoft Community Toolkit 以及其他选项,例如 DirectShow,但没有什么能比得上 Windows 10 媒体捕获类。似乎社区工具包部分是围绕 winforms 和 UWP 的互操作性构建的,但我在文档中找不到对 CameraCaptureUI 的任何引用,或者如何从 winform 中一般地调用它。
以下代码在 UWP 应用程序中运行良好:
CameraCaptureUI dialog = new CameraCaptureUI();
Size aspectRatio = new Size(16, 9);
dialog.PhotoSettings.CroppedAspectRatio = aspectRatio;
StorageFile file = await dialog.CaptureFileAsync(CameraCaptureUIMode.PhotoOrVideo);
StorageFolder folder = KnownFolders.PicturesLibrary;
if (file != null) await file.MoveAsync(folder);
它提供了一个相机对话框,而不仅仅是显示相机 UI。我想从传统风格的 winforms 应用程序中调用此代码。其他人解决了这个问题吗?
澄清一下:我的客户想在 Surface Pro 设备上使用 winforms 应用程序。该设备有两个摄像头,一个前置摄像头和一个“自拍”式摄像头。解决方案最好同时包含这两者,这就是为什么我喜欢使用内置 Windows 10 相机 UI 的想法。
【问题讨论】: