鼠标可以点击不能拖动 WinForm的鼠标拖拽功能
WinForm的鼠标拖拽功能
WinForm的鼠标拖拽功能
功能 此代码实现的是从资源管理器窗口选中一个或多个文件 拖入WinForm窗体中 WinForm后台代码变会得到被拖入的文件列表
思路 通过DragEnter事件获得被拖入窗口的 信息 (可以是若干文件 一些文字等等) 在DragDrop事件中对 信息 进行解析
画面设计
窗体的AllowDrop属性必须设置成true
且必须有DragEnter事件(单独写DragDrop事件是不会具有拖拽功能的)
画面的Designer Code(frmMain Designer cs)
//
// frmMain
//
this AllowDrop = true;
this DragDrop += new System Windows Forms DragEventHandler(this frmMain_DragDrop);
this DragEnter += new System Windows Forms DragEventHandler(this frmMain_DragEnter);
//
// dgv
//
this dgv AllowDrop = true;
this dgv DragEnter += new System Windows Forms DragEventHandler(this frmMain_DragEnter);
this dgv DragDrop += new System Windows Forms DragEventHandler(this frmMain_DragDrop);
Form的后台代码
重要代码 e Effect = DragDropEffects Link;

(注 DragDropEffects枚举类型还有其他值 有兴趣的可以参照MSDN的帮助
us/library/system windows forms dragdropeffects aspx )
WinForm&DataGridView事件
#region DragEnter(Form&DataGridView)
/// <summary>
/// DragEnter
/// </summary>
/// <param name= sender ></param>
/// <param name= e ></param>
private void frmMain_DragEnter(object sender DragEventArgs e)
{
//以下の文がなければ 「frmMain_DragDrop」も役に立たなくなる
e Effect = DragDropEffects Link;
}
#endregion
#region DragDrop(Form&DataGridView)
/// <summary>
/// DragDrop
/// </summary>
/// <param name= sender ></param>
/// <param name= e ></param>
private void frmMain_DragDrop(object sender DragEventArgs e)
{
DataDisplay(e);
this Activate();
}
lishixinzhi/Article/program/net/201311/11510相关文章
- 鼠标插电脑上显示无法识别 电脑插入鼠标没反应怎么办
- 滑鼠鼠标垫 急求:电脑开启后滑鼠能动,但是桌面所有软体都点选无反应,而且工作管理员也打不开,该怎么解决?
- 滑鼠鼠标垫 用滑鼠点选资料夹时总是很快,一点选会直接也把子资料夹也开启,怎么回事?
- 系统还原鼠标没反应了 WIN7系统怎么设置鼠标属性里的选项
- 为什么电脑鼠标突然不受控制乱动 为什么我电脑的滑鼠箭头会不受控制的移动
- 笔记本电脑鼠标没反应 电脑开机后鼠标能动但点击图标没反应,重启几次才可以。
- 滑鼠鼠标垫 为什么win7系统滑鼠选中一个图示就不取消了,右键点选空白处提示开启的选项
- 滑鼠鼠标垫 win8系统,滑鼠乱动,拔掉滑鼠以后还是乱动,想问一下是怎么回事,而
- 鼠标设置怎么设置 在桌面上鼠标左击拖拽图标怎么成复制图标了?
- 鼠标单击on 应用:鼠标单击事件
爱学记

微信收款码
支付宝收款码