现在的位置: 首页 > 综合 > 正文

C#实现简单的拖动功能

2013年10月12日 ⁄ 综合 ⁄ 共 607字 ⁄ 字号 评论关闭

这个例子是将系统文件或目录拖动到窗体中,窗体以MessageBox的形式弹出用户拖入的文件或目录名称。首先需要将要支持拖动的Form的AllowDrop=true;然后通过DragEnter和DragDrop事件即可,具体代码如下:

private void Form1_DragDrop(object sender, DragEventArgs e)
         {
             System.Array datas = (System.Array)e.Data.GetData(DataFormats.FileDrop);
             string filePathOrDirectory = (datas).GetValue(0).ToString();
             if (Directory.Exists(filePathOrDirectory))
             {
                 MessageBox.Show("目录:" + filePathOrDirectory);
             }
             else
             {
                 MessageBox.Show("文件:" + filePathOrDirectory);
             }
         }
 
         private void Form1_DragEnter(object sender, DragEventArgs e)
         {
             if (e.Data.GetDataPresent(DataFormats.FileDrop) == true)
                 e.Effect = DragDropEffects.Link;
             else
                 e.Effect = DragDropEffects.None;
         }

抱歉!评论已关闭.