每当我在Windows窗体表单(从System.Windows.Forms.Form派生)上调用Dispose
方法来关闭它时,Dispose
方法通过释放资源并处理表单来最终确定。 / p>
我有像文本框这样的运行时对象,如下所示:
Textbox Tb = new Textbox();
用户可以动态创建新的文本框。我想要它,以便包含数据的文本框保持不变,并删除那些为null的文本框。当我在空文本框上调用Dispose
方法时,在运行时看起来它们被处理掉了,但通常它们只是看不见。
所以:
在文本框中调用dispose方法与从Forms派生的类之间有什么区别?
为什么要在表格中处理表格,例如Form1.Dispose();
,为什么运行时的文本框不能如下所示?
if (tb.text=="")
tb.Dispose();
答案 0 :(得分:1)
据我了解,这是因为所有权。表单拥有控件,所以如果你处理控件,很好,你只需要刷新它。如果您丢弃表单本身,它就会消失,无需刷新。