Axi*_*ili 1 .net c# garbage-collection winforms
这段代码干净了吗?
private void button1_Click(object sender, EventArgs e)
{
frmCustomDialog f = new frmCustomDialog();
if(f.ShowDialog() == DialogResult.OK)
TextBox1.Text = f.MyCustomProperty;
}
Run Code Online (Sandbox Code Playgroud)
您是否需要关闭或处理表格f或任何其他内容?还是自动垃圾收集?
谢谢.
是的,您应该处理以下表格:
private void button1_Click(object sender, EventArgs e)
{
using (frmCustomDialog f = new frmCustomDialog())
{
if(f.ShowDialog() == DialogResult.OK)
{
TextBox1.Text = f.MyCustomProperty;
}
}
}
Run Code Online (Sandbox Code Playgroud)
ShowDialog()
不会丢弃表单,因为您可以重复使用并再次显示它.如果您不需要这样做,您应该自己处理它.
来自以下文件ShowDialog()
:
与无模式窗体不同,当用户单击对话框的关闭窗体按钮或设置DialogResult属性的值时,.NET Framework不会调用Close方法.而是隐藏表单,并且可以在不创建对话框的新实例的情况下再次显示该表单.因为显示为对话框的表单未关闭,所以当应用程序不再需要该表单时,必须调用表单的Dispose方法.
归档时间: |
|
查看次数: |
251 次 |
最近记录: |