C# 文件拖入控件中,显示文件路径

1.设置所需拖入的控件(以Textbox为列)属性为:

cs 复制代码
this.textBox1.AllowDrop = true; //设置AllowDrop 属性为 true,使之支持拖拽,否则拖拽显示禁用状态

2.设置该控件的两个事件,分别为:

①DragEnter 在用鼠标将某项拖动到该控件的工作区时发生。

②DragDrop 拖放操作完成时发生。

3.编写事件后台代码

cs 复制代码
  private void textBox1_DragEnter(object sender, DragEventArgs e)
  {
      if (e.Data.GetDataPresent(DataFormats.FileDrop))
      {
          e.Effect = DragDropEffects.Link;
      }

      else
      {
          e.Effect = DragDropEffects.None;
      }
  }

  private void textBox1_DragDrop(object sender, DragEventArgs e)
  {
      string path = ((System.Array)e.Data.GetData(DataFormats.FileDrop)).GetValue(0).ToString();
      textBox1.Text = path;
  }

4.运行结果

相关推荐
:mnong6 小时前
Superpowers 项目设计分析
java·c语言·c++·python·c#·php·skills
我是唐青枫6 小时前
C#.NET 分布式事务 深入解析:TCC、Saga、Outbox 与落地取舍
分布式·c#·.net
a里啊里啊6 小时前
测试开发面试题
开发语言·chrome·python·xpath
豆沙糕6 小时前
Python异步编程从入门到实战:结合RAG流式回答全解析
开发语言·python·面试
信奥胡老师7 小时前
P1255 数楼梯
开发语言·数据结构·c++·学习·算法
A.A呐7 小时前
【C++第二十一章】set与map封装
开发语言·c++
扶苏-su7 小时前
Java--获取 Class 类对象
java·开发语言
96777 小时前
C++多线程2 如何优雅地锁门 (lock_guard) 多线程里的锁的种类
java·开发语言·c++
chushiyunen8 小时前
python实现skip-gram(跳词)示例
开发语言·python
CSharp精选营8 小时前
.NET 8 性能优化实战:让你的应用起飞
性能优化·c#·.net·技术干货