关于模态窗体的释放 同一个Form1窗体分别执行Show和ShowDialog后,再执行Close,为什么前者窗体对象被释放,而后者的模态窗体没有释放。也就是说如果Close以后再次执行Show,前者会产生错误,因为窗体对象已经被释放了,而后者则仍可显示窗体。哪位能解释一下为什么会有这种区别? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 ShowDialog通常都会存在返回值这种情况。所以再窗体关闭后,仍然可以访问其public变量。 show窗体被关闭之后,是释放其内存资源;showdialog则只是把窗体隐藏了,而不是释放其内存资源,需要我们显示释放资源。 参看http://blog.csdn.net/Knight94/archive/2006/04/06/652394.aspx 我也想每次关闭后手动释放,毕竟只是个“关于”窗口,没必要总放在内存中,但是经反复对比发现一个问题,对模态窗体Dispose后主窗体界面刷新瞬间有闪烁现象,而普通窗体则无闪烁。看来为了显示效果也就只好牺牲那点内存了。 haurau(鹰) 我想问问,如果我调用ShowDialog();是不是等到系统自己回收还是自己写个释放 必须使用Dispose方法当窗体显示为模式对话框时,单击“关闭”按钮(窗体右上角带 X 的按钮)会隐藏窗体并将 DialogResult 属性设置为 DialogResult.Cancel。与无模式窗体不同,当用户单击对话框的关闭窗体按钮或设置 DialogResult 属性的值时,.NET Framework 不调用 Close 方法。窗体转而可以隐藏并可重新显示,而不用创建该对话框的新实例。因为未关闭显示为对话框的窗体,所以在您的应用程序不再需要该窗体时,必须调用该窗体的 Dispose 方法。 在局域网中怎样获得windows域服务器中用户ID和密码 以一点填充周围不规则区域(前贴未解决,但回复不能超三,晕~~) 按位&?? 关于ACESS数据库连接的问题 datagridview绑定数据源后的选择 100分求winform下datagrid的添加,删除,保存,取消的完整例子 linked clone rdlc报表动态实现数据源绑定 如何将String转成byte? 求助:怎样安装ODP.Net? 水晶报表问题请高手指教 学习C#需要有什么基础?
showdialog则只是把窗体隐藏了,而不是释放其内存资源,需要我们显示释放资源。
http://blog.csdn.net/Knight94/archive/2006/04/06/652394.aspx