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.运行结果

相关推荐
0 0 0几秒前
CCF-CSP 33-2 相似度计算(jaccard)【C++】考点:STL容器(set/map)
开发语言·c++·算法
Mr YiRan5 分钟前
C++高级之SLT中的容器学习与函数谓词
开发语言·c++·学习
wjs202410 分钟前
Bootstrap 下拉菜单:功能、应用与优化
开发语言
bepeater123414 分钟前
Laravel9.X核心特性全面解析
c语言·c++·c#·php
tod11319 分钟前
C++ 核心知识点全解析(七)
开发语言·c++·面试经验
njsgcs22 分钟前
py不等于python
开发语言·python
沐知全栈开发23 分钟前
Vue3 事件处理
开发语言
轩情吖26 分钟前
Qt的事件
开发语言·qt·事件·qt事件·qkeyevent·qmoveevent
敲敲了个代码28 分钟前
构建工具的第三次革命:从 Rollup 到 Rust Bundler,我是如何设计 robuild 的
开发语言·前端·javascript·后端·rust
张铁铁是个小胖子34 分钟前
mysql事务的隔离性如何保证
java·开发语言