Winform程序拖拽文件到窗体

1:首先需要将接收拖拽的窗体属性AllowDrop设置为True。

2:编写窗体拖拽进入(DragEnter)和拖拽完成(DragDrop)事件。

private void FrmCode_DragEnter(object sender, DragEventArgs e)
        {
            if (e.Data.GetDataPresent(DataFormats.FileDrop))      //判断该文件是否可以转换到文件放置格式
            {
                e.Effect = DragDropEffects.Link;       //放置效果为链接放置
            }
            else
            {
                e.Effect = DragDropEffects.None;      //不接受该数据,无法放置,后续事件也无法触发
            }
        }

        private void FrmCode_DragDrop(object sender, DragEventArgs e)
        {
            string path = ((System.Array)e.Data.GetData(DataFormats.FileDrop)).GetValue(0).ToString();     //获取文件路径
            if (path.EndsWith(".Project")) {
                OpenProject(path);
            }
        }
path.EndsWith(".Project")限制了拖拽进来的文件后缀名,如果不符合则不进行进一步读取操作。
原文地址:https://www.cnblogs.com/zhaiyf/p/8335682.html