从 FileSystemWatcher 创建子窗口

问题描述

我有一个 FileSystemWatcher 监视新创建的文件。

当它看到一个时,我希望它打开一个子窗口。

使用:

private void FileSystemWatcher_Created(object sender,FileSystemEventArgs e)
{
    TableWindow win = new TableWindow();
    win.Owner = this;
    win.Text = "xxx";
    win.ShowInTaskbar = false;
    win.Show();
}

我得到的错误是:

跨线程操作无效:控件“Form1”从创建它的线程以外的线程访问

经过一些谷歌搜索。我结束了这个

TableWindow win = new TableWindow();
win.Owner = this;
win.Text = "xxx";
win.ShowInTaskbar = false;
win.Invoke((MethodInvoker)delegate
{
    win.Show();
});

这给了我一个不同的错误:

在创建窗口句柄之前,不能在控件上调用 Invoke 或 BeginInvoke。

这是场景。在游戏中,每次打开一个新表时,都会创建一个新文件。创建该文件后,我想打开一个子窗口来显示该表的统计信息。

这甚至可能吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)