【问题标题】:FileSystemWatcher OnChanged event needs to rejoin UI threadFileSystemWatcher OnChanged 事件需要重新加入 UI 线程
【发布时间】:2015-01-20 01:37:13
【问题描述】:

如何在 FileSystemWatcher 中获取 OnChanged 事件以在 OnChanged 事件完成后调用 UI 线程上的方法?

或者,只是为了知识,我怎样才能让 OnChanged 事件完全在 UI 线程上运行?

【问题讨论】:

  • 为什么不使用调度程序?

标签: c# events user-interface filesystemwatcher


【解决方案1】:

如果您希望FileSystemWatcher 在 UI 线程上引发事件并且您正在使用 Windows 窗体,请将 SynchronizingObject 设置为控件或窗体。如果您使用的是 WPF,那么这不是很有用,因为没有任何东西可以实现 ISyncronizeInvoke。例如,您通常只需通过 Application.Current.Dispatcher.Invoke 在 Dispatcher 上调用 Invoke。

【讨论】:

  • 注意,如果使用Winforms,如果使用Designer将FileSystemWatcher对象添加到FormUserControl,Designer会自动添加正确初始化@987654328所需的代码@属性。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-08-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多