我已经使用了这里的演示。一切运作良好。
http://code.msdn.microsoft.com/Word-2010-Using-the-Drag-81bb5bff
但是,当我尝试将列表框替换为 TreeView 时,它只是不想播放。
5 分钟即可让演示正常运行,现在尝试使用 TreeView 需要 2 个多小时。 IT 肯定不应该那么难吧?
最佳答案
具体涉及上面提到的演示以及我从列表框到 TreeView 的修改:
有一个关于“e.Data.GetDataPresent”的测试,它确定光标/指针在 GUI 上移动时的“效果” - 从任务 Pane 中的 TreeView 到文档上方(效果在此实例中在 ItemDrag 事件中设置)。
当光标移动到文档上(以及覆盖在文档上的表单)上时,将引发“DragEnter”事件,如果未找到数据,则效果将设置为“DragDropEffects.None”。 这意味着当将项目拖放到文档上时(通过不可见的覆盖表单),“DragDrop”事件将不会被触发,因为“DropEffects.None”会阻止此操作。
问题出在我对 DragEventArgs.Data 属性中存在的数据 bing 的测试上。 不过,有趣的是“DragDropEffects”的影响及其对其他事件的副作用。
关于winforms - 自定义任务 Pane 并将 TreeView 从 Pane 拖放到文档(而不是相反),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12498110/