在开发.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等,方法类似。
您可能感兴趣的文章:- WinFrom中label背景透明的实现方法
- C# winfrom 模拟ftp文件管理实现代码
- winfrom 在业务层实现事务控制的小例子
- winfrom 打印表格 字符串的封装实现代码 附源码下载
- C#之WinForm跨线程访问控件实例
- c#中多线程访问winform控件的若干问题小结
- 深入分析C#中WinForm控件之Dock顺序调整的详解
- C#中让控件全屏显示的实现代码(WinForm)
- WinForm实现按名称递归查找控件的方法
- WinForm自定义控件应用实例
- 简介Winform中创建用户控件
- WinForm 自动完成控件实例代码简析
- C#的winform控件命名规范