C# 如何仅删除windows窗体中的文件?
我有一个表格,我想能够把文件放在上面。我有以下代码:C# 如何仅删除windows窗体中的文件?,c#,winforms,C#,Winforms,我有一个表格,我想能够把文件放在上面。我有以下代码: private void Form1_DragEnter(object sender, System.Windows.Forms.DragEventArgs e) { if (e.Data.GetDataPresent(DataFormats.FileDrop)) e.Effect = DragDropEffects.Copy; else e.Effect = DragDropEffects.
private void Form1_DragEnter(object sender, System.Windows.Forms.DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.FileDrop))
e.Effect = DragDropEffects.Copy;
else
e.Effect = DragDropEffects.None;
}
我希望光标仅在删除文件时更改,而不是在删除目录时更改。上面的代码也对目录进行了更改。我做错了什么?文件是否有任何数据格式,或者我是否应该简单地检查在e.data中获取的对象以进行扩展?您应该使用
文件.Exists检查数据?我认为如果它是一个文件,它将返回true,如果不是,它将返回false
以下是一个例子:
你试过这个吗?我想在鼠标拖动过程中进行文件访问会导致打嗝和口吃。@ StaveWeles,如果你不做每一次鼠标移动(剪贴板在拖拽时都是静态的),它就不会做一次。但我也没试过。有什么理由不检查文件扩展名吗?
if(File.Exists(path))
{
// This path is a file
ProcessFile(path);
}
else if(Directory.Exists(path))
{
// This path is a directory
ProcessDirectory(path);
}
else
{
Console.WriteLine("{0} is not a valid file or directory.", path);
}