none
关于运用反射在插件中出现 “无法访问已经释放的资源”问题 RRS feed

  • 问题

  • 在MDI窗体中 第一次用反射调用子窗体的时候能够正常显示,若关闭子窗体再调用一次就出现 An unhandled exception of type 'System.ObjectDisposedException' occurred in System.Windows.Forms.dll

    Additional information: 无法访问已释放的对象。 
    这是什么原因造成的?

    为了.NET而奋斗
    2009年10月10日 3:21

答案

  • 你好能否提供详细的代码?
    既然子窗体以及dispose咯,为什么还要再去访问?
    Wenn ich dich hab’,gibt es nichts, was unerträglich ist.坚持不懈!http://hi.baidu.com/1987raymond
    • 已标记为答案 KeFang Chen 2009年10月12日 2:13
    2009年10月10日 3:31
    版主
  • 您好,释放后,需重新加载。
    可以提供一些关键代码,以便讨论。
    • 已标记为答案 KeFang Chen 2009年10月12日 2:13
    2009年10月10日 10:21
  • 你好!
         你关闭了子窗体后,子窗体占用的资源已经被释放,这时无法再访问子窗体了!
         有两种方法来解决:
         1,重新加载子窗体
         2,不要关闭子窗体,可以使用Hide方法隐藏子窗体!
    周雪峰
    • 已标记为答案 KeFang Chen 2009年10月12日 2:13
    2009年10月10日 10:48
    版主

全部回复

  • 你好能否提供详细的代码?
    既然子窗体以及dispose咯,为什么还要再去访问?
    Wenn ich dich hab’,gibt es nichts, was unerträglich ist.坚持不懈!http://hi.baidu.com/1987raymond
    • 已标记为答案 KeFang Chen 2009年10月12日 2:13
    2009年10月10日 3:31
    版主
  • 您好,释放后,需重新加载。
    可以提供一些关键代码,以便讨论。
    • 已标记为答案 KeFang Chen 2009年10月12日 2:13
    2009年10月10日 10:21
  • 你好!
         你关闭了子窗体后,子窗体占用的资源已经被释放,这时无法再访问子窗体了!
         有两种方法来解决:
         1,重新加载子窗体
         2,不要关闭子窗体,可以使用Hide方法隐藏子窗体!
    周雪峰
    • 已标记为答案 KeFang Chen 2009年10月12日 2:13
    2009年10月10日 10:48
    版主
  • 此问题已经解决,不过还是没弄明白。代码没有改动,重启了下电脑就可以了。
    为了.NET而奋斗
    2009年10月12日 8:10