c#拖动文件放入textbox控件中,获取此文件的路径
时间: 2023-10-08 08:05:14 浏览: 216
实现文件拖拽入窗体中读取文件路径.zip_C#_menbis
可以使用TextBox的DragEnter和DragDrop事件来完成这个功能。
首先,在窗体的构造函数中添加以下代码:
```csharp
textBox1.AllowDrop = true;
textBox1.DragEnter += TextBox1_DragEnter;
textBox1.DragDrop += TextBox1_DragDrop;
```
然后分别实现DragEnter和DragDrop事件:
```csharp
private void TextBox1_DragEnter(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.FileDrop))
e.Effect = DragDropEffects.All;
else
e.Effect = DragDropEffects.None;
}
private void TextBox1_DragDrop(object sender, DragEventArgs e)
{
string[] files = (string[])e.Data.GetData(DataFormats.FileDrop);
if (files.Length > 0)
textBox1.Text = files[0];
}
```
在DragEnter事件中,判断拖入的数据是否为文件,如果是则允许拖放,否则不允许。
在DragDrop事件中,获取拖入的文件路径,并将第一个文件路径设置为TextBox的文本。
注意,这里只获取了拖入的第一个文件的路径,如果需要处理多个文件,则需要对files数组进行遍历处理。
阅读全文