【发布时间】:2012-05-23 07:27:43
【问题描述】:
我有这个代码(感谢迄今为止一直在帮助的人)
它在目录和所有子目录中搜索文件名。
Files.Clear(); //BindingList<FileInfo> Datasource for a datagridview
Task.Factory.StartNew( () =>
{
DirectoryInfo dir = new DirectoryInfo(MainFolder);
foreach(var file in dir.EnumerateFiles("*" + textBox1.Text + "*.doc?", SearchOption.AllDirectories).Take(200))
{
this.BeginInvoke( new Action(() =>
{
Files.Add(file);
}));
}
});
问题是如果我将 textBox1.text 设置为我知道只有 1 个的东西,它会将其添加到 Files 4 次。我尝试中断指向它以确保它不是我显示它的方式。
我比较了这 4 个对象,它们是相同的。当我稍微打开搜索条件并获得 5 个结果时,其中一些是 1,一些是两倍,一些是三倍。所以有 5 个独特的结果,但总共大约有 10-12 个。
我做错了什么?
【问题讨论】: