C#界面里的AllowDrop属性DragDrop和DragEnter事件

Posted caimouse

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#界面里的AllowDrop属性DragDrop和DragEnter事件相关的知识,希望对你有一定的参考价值。

C#界面里的AllowDrop属性、DragDrop和DragEnter事件

在软件开发里,使用到拖放功能的还是比较少见一些,因为开发的难度比较大,并且大家也不太熟悉,
但是使用起来就比较方便。
比如开发一个上传的软件,一般情况会让用户打开一个窗口选择上传的文件。
如果有这样一个功能,可以让用户直接拖文件到窗口,就给上传, 这样就会更加方便。

要实现这样的功能,就得理解拖放功能启用,以及拖放的事件响应。
当一个文件从一个窗口拖动到另一个窗口的过程,需要经历几个状态,第一个就是原窗口里拖动时,显示为一个拖动的图标,
接着拖动的过程中碰到另一个窗口时,就需要响应拖动进入事件,如果没有这个事件,
这个窗口就会显示为普通的鼠标。所以要实现拖动进入DragEnter事件,这时就把鼠标修改为我们需要显示的图标。
最后拖动到窗口指定位置了,就需要松开鼠标,这时会触发另外一个事件DragDrop。
在最后的事件里,就需要根据拖动过来的文件是什么类型作出响应了。比如处理图片类型的,就判断是否
为图片类型,如果是就打开它,否则拒绝执行。

下面的例子,就把窗口AllowDrop的修改为true,打开允许拖放。
然后响应后面两个事件,就完成了。
具体代码参考如下:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using Sys

以上是关于C#界面里的AllowDrop属性DragDrop和DragEnter事件的主要内容,如果未能解决你的问题,请参考以下文章

ListView 的 DragEnter、DragOver、DragDrop 事件未引发 (AllowDrop=True)

C#界面里的winform ContextMenuStrip属性

C#界面里的winform ContextMenuStrip属性

C#界面里的winform BackColor和BackgroundImage属性

C#界面里的winform BackColor和BackgroundImage属性

C#界面里的winform AutoScaleMode属性