每次关闭应用程序时,我都会遇到一个非常烦人的错误,该错误告诉我:
无法访问已处置的对象
只有当我关闭我的应用程序时才会发生这种情况。
这是发生错误的部分代码:
/// <summary>
/// Method that shows a log to the user, about what is happening behind scenes.
/// </summary>
/// <param name="logtext"></param>
public void DisplayLog(string logtext)
{
if (this.txtLog.InvokeRequired)
{
Invoke(new MethodInvoker(delegate()
{
txtLog.AppendText(logtext + "\n\n");
}));
}
else
{
txtLog.AppendText(logtext + "\n\n");
}
}
错误发生在txtLog.AppendText
else 括号之间。它可能与我正在使用的线程有关,上面的代码没有在我创建的线程中运行,只有 Windows 窗体线程在后台运行以检查触发的事件,发送的代码logtext
这个方法是在另一个名为 的内部类Serial
中,然后它从一个线程运行,有人知道如何解决这个问题吗?
提前致谢!