//  关闭窗体后发生。
  private void F_Chat_FormClosed(object sender, FormClosedEventArgs e)
        {
                        udpSocket1.Active = false;//将组件属性设为 false  
        }假如该方法可行的话,那么得出:窗体关闭后,组件不会随之关闭,能继续访问。难道组件没有作用域限制,需要代码来关闭?

解决方案 »

  1.   

    所谓关闭Close,或者设置什么Active属性(这其实也不是关闭),都是设置属性。既然你要纠结于编程层,而不是业务逻辑测试层,那么何必混淆起来呢?!只要是对象没有被GC回收,都是可以被访问的。例如一些被“弱引用”的对象都是可以被访问的。更何况说“修改对象自身的一个属性,或者执行一个方法,于是对象就离开作用域了”,这根本不符合作用域的基本概念。