Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 拖放到Excel VSTO中的自定义任务窗格_C#_Excel_Drag And Drop_Vsto_Customtaskpane - Fatal编程技术网

C# 拖放到Excel VSTO中的自定义任务窗格

C# 拖放到Excel VSTO中的自定义任务窗格,c#,excel,drag-and-drop,vsto,customtaskpane,C#,Excel,Drag And Drop,Vsto,Customtaskpane,啊,我卡住了 我正在编写一个Excel加载项,它将打开一个自定义任务窗格(这是一种数据分析工具类型)。为了提高工作效率,我希望用户能够将对象(如文件或电子邮件附件)拖到任务窗格的一部分进行处理,而不必通过一个或多个文件对话框 问题是Excel似乎完全覆盖了自定义任务窗格及其包含的控件的拖放属性,因此,当我将文件拖放到任务窗格上时,Excel只是尝试将其作为电子表格打开(如果它是受支持的文件类型,则会成功打开),而DragDrop事件永远不会触发 是否有任何方法使Excel停止执行此操作,以便将d

啊,我卡住了

我正在编写一个Excel加载项,它将打开一个自定义任务窗格(这是一种数据分析工具类型)。为了提高工作效率,我希望用户能够将对象(如文件或电子邮件附件)拖到任务窗格的一部分进行处理,而不必通过一个或多个文件对话框

问题是Excel似乎完全覆盖了自定义任务窗格及其包含的控件的拖放属性,因此,当我将文件拖放到任务窗格上时,Excel只是尝试将其作为电子表格打开(如果它是受支持的文件类型,则会成功打开),而DragDrop事件永远不会触发


是否有任何方法使Excel停止执行此操作,以便将drop事件发送到任务窗格?

好的,我找到了一种方法。事实证明,DragDrop事件不会触发,因为Excel本身会处理所有拖动事件,但DragEnter事件会触发,当触发时,我可以在实际拖放目标的顶部打开一个无模式窗体。然后,此窗体可以接收DragDrop事件(并在DragLeave事件中自杀)。这有点像黑客,但它似乎工作得很好。

嗨。您打开的表单是否对用户可见?我也有同样的问题,所以我想看看你的代码。