我正在做一个项目,有两种形式 - 一种是主要形式,另一种是由拆分面板和列表框组成的控制台类似形式(在面板 1 中)
我调用了一个方法( writeToConsole(string textToWrite) )——顾名思义——在 consoleWindow 表单的列表框中添加一行文本
我遇到的问题是,为了显示这个表单,我使用了一个调用 show 命令的按钮。但是,如果我用右上角的“x”按钮关闭所述表单,然后再次单击“显示控制台”按钮,我会得到:
ObjectDisposedException
"Cannot access a disposed object.
Object name: 'consoleOutput'."
现在,我有点理解这个问题——我在一两个月前就遇到了,据我所知,因为当你按下 x 时它会关闭表单,这意味着它必须重新初始化/重新加载才能显示——因此错误是(简而言之)“我无法向您展示不存在/处于困境中的东西”
(再一次,这就是整个“表面上看就是它的意思,但实际上并没有比那个更深”的观点——我理解它比那个更深)
我的问题是:有人可以向我解释到底发生了什么/错误,以及做这种事情的最佳方法吗?
我了解错误的概念,并且知道一两种解决方法,但我想成为一名程序员,因此想知道(至少)这种情况下的事件流并扩展我的知识
谢谢
为了安全起见:
consoleOutput consoleOutput = new consoleOutput();
private void btnShowConsole_Click(object sender, EventArgs e)
{
//Check to see if the console is visible, of which if its not, make it so
//If it is on the other hand, just bring it to the front to show the user
if (consoleOutput.Visible == false)
consoleOutput.Show();
else
consoleOutput.BringToFront();
}