.NET WinFrom中给文本框添加拖放事件的代码
更新时间:2014年05月05日 16:03:15 作者:
有时候我们希望窗体上的文本框能接受鼠标拖放事件,比如允许将文件直接拖放到文本框中以直接获取到文件的本地路径
在开发.NET WinForm程序时,有时候我们希望窗体上的文本框能接受鼠标拖放事件,比如允许将文件直接拖放到文本框中以直接获取到文件的本地路径,或者将选取的字符串直接拖放到文本框中等等。要实现这个功能其实很简单,代码如下。
1. 将文本框的属性AllowDrop设置成True
2. 给文本框添加DragEnter事件
private void textBox1_DragEnter(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.FileDrop, false))
{
e.Effect = DragDropEffects.All;
}
}
注意DataFormats下面有许多其它的属性允许你将不同类型的数据拖放到文本框中。上面的代码用于将文件的本地路径拖放到文本框中。
3. 给文本框添加DragDrop事件以接收数据
private void textBox1_DragDrop(object sender, DragEventArgs e)
{
this.textBox1.Text = GetDragData((string[])e.Data.GetData(DataFormats.FileDrop));
}
你还可以给其它的控件添加鼠标拖放事件,如ListBox等,方法类似。
1. 将文本框的属性AllowDrop设置成True
2. 给文本框添加DragEnter事件
复制代码 代码如下:
private void textBox1_DragEnter(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.FileDrop, false))
{
e.Effect = DragDropEffects.All;
}
}
注意DataFormats下面有许多其它的属性允许你将不同类型的数据拖放到文本框中。上面的代码用于将文件的本地路径拖放到文本框中。
3. 给文本框添加DragDrop事件以接收数据
复制代码 代码如下:
private void textBox1_DragDrop(object sender, DragEventArgs e)
{
this.textBox1.Text = GetDragData((string[])e.Data.GetData(DataFormats.FileDrop));
}
你还可以给其它的控件添加鼠标拖放事件,如ListBox等,方法类似。
相关文章
一文带你了解.Net基于Threading.Mutex实现互斥锁
互斥锁是一个互斥的同步对象,意味着同一时间有且仅有一个线程可以获取它。这篇文章主要介绍了一文带你了解.Net基于Threading.Mutex实现互斥锁,感兴趣的可以了解一下2021-06-06
Asp.net core利用MediatR进程内发布/订阅详解
这篇文章主要给大家介绍了关于Asp.net core利用MediatR进程内发布/订阅的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Asp.net core具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧2019-06-06


最新评论