C# 文件夹WPF的列表框中显示重复的文件

C# 文件夹WPF的列表框中显示重复的文件,c#,wpf,C#,Wpf,我有一个问题,如果我从gedaan文件夹获取文件 它复制并将文件夹中的文件放在我的列表框中 我只想让它检查我的文件夹中是否有新文件 这是我从文件夹中获取文件的代码 DirectoryInfo dinfo = new DirectoryInfo(@"C:\Users\nour\Desktop\Gedaan"); FileInfo[] Files = dinfo.GetFiles("*.DOCX"); foreach (FileInf

我有一个问题,如果我从gedaan文件夹获取文件 它复制并将文件夹中的文件放在我的列表框中

我只想让它检查我的文件夹中是否有新文件

这是我从文件夹中获取文件的代码

        DirectoryInfo dinfo = new 
        DirectoryInfo(@"C:\Users\nour\Desktop\Gedaan");
        FileInfo[] Files = dinfo.GetFiles("*.DOCX");
        foreach (FileInfo file in Files)
        {
            LB2.Items.Add(file.Name);
        }

这是因为您正在再次添加所有文件

在再次添加所有文件之前,您必须清除集合:

DirectoryInfo dinfo = new 
DirectoryInfo(@"C:\Users\nour\Desktop\Gedaan");
FileInfo[] Files = dinfo.GetFiles("*.DOCX");
LB2.Items.Clear();
foreach (FileInfo file in Files)
{
    LB2.Items.Add(file.Name);
}
或者您必须排除重复的文件:

DirectoryInfo dinfo = new 
DirectoryInfo(@"C:\Users\nour\Desktop\Gedaan");
IEnumerable<FileInfo> Files = dinfo.GetFiles("*.DOCX").Where(file => !LB2.Items.Contains(file.Name));
foreach (FileInfo file in Files)
{
    LB2.Items.Add(file.Name);
}

另一种方法是将LB2.Items的类型更改为HashSet类型。HashSet是一个不包含重复元素的集合。阅读更多信息:

可能是重复的我运用了我的常识,在你发帖之前做了第一个,无论如何,谢谢!标记为答案