C# 在DataGridView(Windows窗体应用程序-C)中选择文件并将文件从一个目录移动到另一个目录

C# 在DataGridView(Windows窗体应用程序-C)中选择文件并将文件从一个目录移动到另一个目录,c#,windows-forms-designer,C#,Windows Forms Designer,我尝试在datagridview上多次选择文件后移动文件。我已使用TextBox加载所有选定的文件。除此之外,InputBox用于输入目标路径 另外,由于File.Move需要完整的路径,所以将多个文件从一个位置传输到另一个位置的最佳方式是什么 谢谢你抽出时间 private void MoveAllFiles_Click(object sender, EventArgs e) { if(this.GridView.GetCellCount(DataGridViewEle

我尝试在datagridview上多次选择文件后移动文件。我已使用TextBox加载所有选定的文件。除此之外,InputBox用于输入目标路径

另外,由于File.Move需要完整的路径,所以将多个文件从一个位置传输到另一个位置的最佳方式是什么

谢谢你抽出时间

private void MoveAllFiles_Click(object sender, EventArgs e)
    {
        if(this.GridView.GetCellCount(DataGridViewElementStates.Selected) > 0)
        {
            try
            {
                Clipboard.SetDataObject(this.GridView.GetClipboardContent());
                this.textBox1.Text = Clipboard.GetText();
                string UserInputSrc = textBox1.Text;

                string UserInputDestn = Microsoft.VisualBasic.Interaction.InputBox("Enter the Folder Destination,", "Enter the Destination Location", "", 0, 0);
                File.Move(UserInputSrc,UserInputDestn);

            }
            catch (System.Runtime.InteropServices.ExternalException)
            {
                this.textBox1.Text = "The clipboard could not be accessed. Please try again.";
            }
        }
    }

编辑:例如,我的文件夹中有20个文件,比如ABC,我希望它们在201420152016年和2017年放在4个文件夹中,其中应该包含在201420152016年和2017年创建的文件。对于这个简单的任务,我将单击按钮并要求我的应用程序完成这项工作

嗨,问做某事的最佳方式会导致太多的答案,因为每个人都可能有不同的答案。我建议您尝试一下,因此,如果您发现问题,我们有一个具体的问题可以帮助您。建议:将IO不敏感的任务放在另一个线程上,即TaskFile。Move一次只移动一个文件。您在这里谈论的文件数量和大小是多少?=!我想你需要一个接一个地移动它们,或者zip'em=>move=>unzip'emIt可以是.pdf、.txt或任何图像格式。