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

时间:2012-06-13 09:16:41

标签: c# wpf kinect

(首先我要解释的问题)

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

我正在为MSKinect开发,我想实现一个非常接近原生拖放的拖放(参见msdn doc)。

我已经使用画布实现了拖放,并使用Kinect游标引发的事件来“拖动”周围的事物。但是我更感兴趣的是使用拖放来传输数据。

我知道通常在释放鼠标按钮时会启动drop事件,我想在给定手势发生时进行draggableElement释放。

其他信息:我正在根据LesterLobo's work

实施经理

1 个答案:

答案 0 :(得分:0)

您可以使用Win32 API的SendInput功能全局模拟鼠标移动和点击。您可以使用C#here找到有关如何调用该函数的说明。

SendInput函数与实际使用鼠标的距离非常接近。不幸的是,使用起来不太方便。你必须模拟按下鼠标左键,移动鼠标,然后释放鼠标左键。

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