首先,我已经阅读了网站上类似问题的几个答案,但老实说,我发现它们有点令人困惑(由于我缺乏经验而不是答案!)。我正在使用 FileSystemWatcher() 类来监视文件夹以查找正在创建/更改的文件。一旦事件发生,我想在项目中加载另一个表单。当新表单上的构造函数尝试执行时,我没有加载表单,而是收到错误消息。我只使用一个线程 - 我没有尝试在不同的线程下加载表单。我的代码如下
//MainWindow
public static void FolderWatcher()
{
FileSystemWatcher fsWatcher = new FileSystemWatcher();
fsWatcher.Path = "C:\\dump";
fsWatcher.Filter = "*";
fsWatcher.NotifyFilter = NotifyFilters.LastAccess | NotifyFilters.LastWrite
| NotifyFilters.FileName | NotifyFilters.DirectoryName;
fsWatcher.Created += new FileSystemEventHandler(OnChanged);
fsWatcher.EnableRaisingEvents = true;
}
public static void OnChanged(object source, FileSystemEventArgs e)
{
var imagePreview = new ImagePreview();
imagePreview.Show();
}
//SecondForm
public partial class ImagePreview : Window
{
public ImagePreview()
{
InitializeComponent(); //error occurs here
}
}
希望您能提供帮助,非常感谢。