无鼠标拖放 - 更改事件的引发方式(以编程方式引发下降/拖动事件)

本文关键字:事件 方式引 编程 拖动 方式 鼠标 拖放 | 更新日期: 2023-09-27 18:36:56

(首先是问题,然后我会解释)

如何告诉应用程序以编程方式删除对象/引发 drop 事件(我没有使用鼠标)?

我目前正在为 MSKinect 开发,我想实现一个非常接近本机拖放的拖放(请参阅 msdn 文档)。

我已经使用画布实现了拖放,并使用 Kinect 光标引发的事件来"拖动"内容。 但我对使用拖放传输数据更感兴趣。

我知道通常在释放鼠标按钮时启动 drop 事件,我想在给定手势发生时释放可拖动元素。

附加信息:我正在根据 LesterLobo 的工作实施管理器

无鼠标拖放 - 更改事件的引发方式(以编程方式引发下降/拖动事件)

可以使用

Win32 API 的SendInput函数全局模拟鼠标移动和单击。可以在此处找到有关如何使用 C# 调用函数的说明。

SendInput功能与实际使用鼠标一样接近。不幸的是,使用起来不是很方便。您必须模拟按下鼠标左键、移动鼠标和释放鼠标左键。

请注意,此方法旨在跨应用程序以及在应用程序内拖动内容。如果您只想在应用程序中拖动内容,则很可能有一个更简单的解决方案。