我正在尝试从某个位置浏览文件,并希望在Windows窗体checklistbox中显示它。它应该可以在目录中添加和删除文件。我尝试过一个琐事
public class ApplicationDbContext : DbContext
{
public ApplicationDbContext()
: base()
{
}
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
modelBuilder.Conventions.AddBefore<PropertyMaxLengthConvention>(new StringDefaultMaxLengthConvention());
modelBuilder.Conventions.Add<NameConvention>();
modelBuilder.Entity<Person>();
}
}
解决它的最简单的调整是什么。
我想要以下情景。
没有档案 文件添加 文件删除
答案 0 :(得分:2)
您可以像这样使用FileSystemWatcher
:
FileSystemWatcher watcher = new FileSystemWatcher();
watcher.Path = Folder;
watcher.NotifyFilter = NotifyFilters.LastAccess | NotifyFilters.LastWrite |
NotifyFilters.DirectoryName | NotifyFilters.FileName;
watcher.Changed += new FileSystemEventHandler(OnChanged);
watcher.Created += new FileSystemEventHandler(OnCreated);
watcher.Deleted += new FileSystemEventHandler(OnChanged);
watcher.Renamed += new RenamedEventHandler(OnRenamed);
watcher.EnableRaisingEvents = true;
有关详细信息,请参阅https://msdn.microsoft.com/en-us/library/system.io.filesystemwatcher(v=vs.110).aspx
最好使用异步事件处理程序,而不是在轮询时浪费CPU周期。
答案 1 :(得分:1)
我认为问题是你的if语句条件,改变它是这样的:
if (File.Exists(file.FullName))
{
lsb.Items.Add(file.Name);
}