0

这是一个非常基本的设置。我有一个 System.Windows.Forms 面板,其中包含一个 ElementHost 控件,该控件包含一个 System.Windows.Controls 画布。用户开始拖动操作,并且从 Canvas 控件触发了拖动输入事件,但我真正想要的是画布忽略拖动输入并让事件被父 System.Windows.Forms.Panel 捕获拿着画布。我怎样才能做到这一点?

4

1 回答 1

1

对此的简单回答是,你不能那样做。如果您将 Win32、WPF 或 DirectX 技术相互叠加,则最上面的技术优先,它对其他技术来说是一个黑洞。您遇到的限制称为空域,如果您四处搜索,您会发现许多讨论空域限制和混合 WPF/Winforms/DirectX 内容的文章。请参阅以下链接:

技术区域概览

可能有一些方法可以帮助您为您要完成的工作提供解决方法。例如,在 WPF 中处理输入,然后以其他方式将其显式传递回您的程序。一些快速的谷歌搜索显示:

缓解空域问题

WPF 和 Win32 互选项

于 2013-09-18T16:09:22.960 回答