0

我使用此代码打开窗口以确保只会创建一个窗口:

    ticketTypesForm = ticketTypesForm ?? new fTicketTypes();
    ticketTypesForm.Show();
    ticketTypesForm.Activate();

但是一旦我关闭窗口,我就会收到异常:

Cannot access a disposed object.
Object name: 'fTicketTypes'.
4

2 回答 2

4

检查MSDN 中的 IsDisposed-Property

于 2013-04-28T16:35:17.167 回答
0

除了使用Close方法,您还可以使用HideHide方法不会释放对话框的实例。所以你不需要再检查它是否被处理了。只显示之前隐藏的对话框。

隐藏的唯一缺点是将对话框的资源驻留在缓存中。但有时它更方便。

于 2013-04-28T17:16:07.627 回答