C#.net拖拽实现获得文件路径

C#.net拖拽实现获得文件路径
作者Attilax ,  EMAIL:[email protected]

思路: 通过DragEnter事件获得被拖入窗口的“信息”(可以是若干文件,一些文字等等),
在DragDrop事件中对“信息”进行解析。


窗体的AllowDrop属性必须设置成true;


且必须有DragEnter事件(单独写DragDrop事件是不会具有拖拽功能的)

 

 private void Form1_DragEnter(object sender, DragEventArgs e)

 {

              if (e.Data.GetDataPresent(DataFormats.FileDrop))

                  e.Effect = DragDropEffects.Link; //重要代码:表明是链接类型的数据,比如文件路径

               else e.Effect = DragDropEffects.None;

    }





         private void Form1_DragDrop(object sender, DragEventArgs e)

         {

               string path = ((System.Array)e.Data.GetData(DataFormats.FileDrop)).GetValue(0).ToString();

             MessageBox.Show(path);  

         }
View Code

 

参考:


WinForm的鼠标拖拽功能(C#)
C#中的拖放操作 - fumingkui@126的日志 - 网易博客.htm
winform(C#)拖拽实现获得文件路径_.NET教程网——简单专业的.NET技术网站.htm

 原文链接:http://blog.csdn.net/attilax/article/details/8795867

你可能感兴趣的:(.net)