Windows Media Player视频 - 如何禁用用户交互?

问题描述:

我必须在我的C#程序中播放视频,因此用户无法与其互动,因为PC将设置在公共区域。Windows Media Player视频 - 如何禁用用户交互?

我试图取消选中Enable Control,我也设置uiMode to 'none',但CTRL +P(暂停)仍然有效。这让我觉得其他热键也是如此。

我该如何设置它,以便您无法对视频执行任何操作?

编辑:

我使用Winforms,因为它似乎更容易。我不是一个真正的C#开发人员,我有0经验,它类似VB从学校回来。

+0

你不能。这些嵌入在对象本身中。你可以尝试捕捉关键事件,但这可能不会工作,因为他们将重点放在表单输入本身而不是玩家输入。相反,你应该寻找另一个让你灵活地做到这一点的球员。 WMP从来没有被设计用于输入完全被阻止的这些类型的东西。 –

+0

@Ahmedilyas你确定吗?如果是这样,还有什么其他选择?我对这些事情不是很熟悉。 (或一般的C#)。 –

+0

是的,我确定。它不是C#特定的,而是WMP组件。 –

你有没有试过把另一个透明窗口放在媒体播放器前面(只在需要时才放置区域)。虽然不完全是befinner水平,那也不完全是超级科学。

由于WINDOWS可以放在前面,因此应该阻止与媒体播放器的任何交互,同时 - 由于透明 - 仍然会显示视频。

MAybe即使是一个控制工程(面板上没有任何东西),但鉴于媒体播放器是本机控制,它可能需要隐藏它在透明窗口后面。

WOuld有助于了解您使用的UI技术.... Winforms或WPF。

+0

我正在使用Winforms。 放置东西之前似乎工作的对象,但我找不到任何透明时透明的东西。面板和标签仅显示背景,而不显示背后的内容。 –

如果您正在开发WPF应用程序,您可以使用MediaElement。它对用户交互没有任何控制权。开发人员必须使用按钮,进度条等手动构建它,以防他需要为用户交互提供控制。

和使用是非常简单的:

<MediaElement Source="path_to_video-file.mp4" /> 

参考:

  1. Sample Application in MSDN
  2. http://www.wpf-tutorial.com/audio-video/playing-video/

PS:原来,你正在开发WinForm的应用程序,而不是的WPF。如果这个选项对你来说仍然很有趣,你可以使用ElementHost来将WPF控件嵌入到winform中。

这是网上提供的许多关于如何使用ElementHost控件的教程之一:http://tech.pro/tutorial/799/wpf-tutorial-using-wpf-in-winforms