代码之家  ›  专栏  ›  技术社区  ›  paradisonoir

如何在WPF中禁用Windows Media Player中的控件

  •  0
  • paradisonoir  · 技术社区  · 15 年前

    我只是想知道是否有一种方法可以禁用AxWindowsMediaPlayer中的控件,如ctr左/右箭头或alt+左/右箭头。在我的WPF项目中,我在windowsformshost中使用它。我想捕获这些控件并自己处理它们。当我使用这个块时,我没有任何方法可以通过使用e.handeld=true或其他方法来阻止它。

      void MediaPlayer_KeyDownEvent(object sender, AxWMPLib._WMPOCXEvents_KeyDownEvent e)
            {
    
            }
    

    关于如何禁用它并继续使用我自己的控件的任何建议。重要的是,如果我使用这些命令,它会在某个地方冒泡并冻结GUI,而且我没有任何方法来捕获它来进行控制。但是没有任何错误。

    谢谢

    2 回复  |  直到 15 年前
        1
  •  1
  •   paradisonoir    15 年前

    它可以通过控制keydown在windowsformhost级别被阻止。

        2
  •  0
  •   Anvaka    15 年前

    我有一个想法要尝试,但我没有测试过。从WindowsFormsHost继承并重写 WndProc() 方法。在此方法中捕获 WM_KEYDOWN 消息,处理它,如果它是要禁止显示的键,则返回0。

    如果它不起作用,您可能希望找到其他方法来钩住Windows过程。

    希望这有帮助。

    干杯,Anvaka