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

C# 无鼠标拖放-更改事件的引发方式(以编程方式引发拖放/拖动事件),c#,wpf,kinect,C#,Wpf,Kinect,(先问问题,然后我会解释) 如何告诉应用程序以编程方式删除对象/引发删除事件(我没有使用鼠标)? 我目前正在为MSKinect开发,我想实现一个真正接近本机拖放的拖放(请参阅) 我已经使用画布实现了拖放,并使用Kinect游标引发的事件来“拖动”对象。但我更感兴趣的是使用拖放传输数据 我知道通常在释放鼠标按钮时启动drop事件,我希望在给定手势发生时释放DragableElement 附加信息:我正在基于实现一个管理器。您可以使用Win32 API的功能全局模拟鼠标移动和单击。您可以找到有关如何

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

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

我目前正在为MSKinect开发,我想实现一个真正接近本机拖放的拖放(请参阅)

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

我知道通常在释放鼠标按钮时启动drop事件,我希望在给定手势发生时释放DragableElement


附加信息:我正在基于

实现一个管理器。您可以使用Win32 API的功能全局模拟鼠标移动和单击。您可以找到有关如何使用C#调用函数的说明

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


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

我认为使用SendInput绕过鼠标可以工作,但是我宁愿只在代码后面引发一个事件(就像我们可以引发单击事件一样)。我根本不想使用鼠标(或其输入),因为我有两个使用Kinect的游标,用于两个不同的用户(即4个游标)。我不希望在这个函数上有任何并发性:可能同时有4个拖放。