刷新Windows窗体中的清单框

时间:2015-12-15 21:52:49

标签: c# .net list windows-forms-designer

我正在尝试从某个位置浏览文件,并希望在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>();
    }
}  

解决它的最简单的调整是什么。

我想要以下情景。

没有档案 文件添加 文件删除

2 个答案:

答案 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);
    }