Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/300.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
VS 2008 C#仅将焦点设置为一种形式_C#_Forms_Visual Studio 2008_Focus - Fatal编程技术网

VS 2008 C#仅将焦点设置为一种形式

VS 2008 C#仅将焦点设置为一种形式,c#,forms,visual-studio-2008,focus,C#,Forms,Visual Studio 2008,Focus,当显示我的表单(AboutForm)时,我需要将焦点保持在此表单上(用户应该只能单击“确定”按钮) VS2008中需要哪种设置 谢谢 问候leon22如果要以模式显示,请使用而不是show()。仅此而已 例如: using(var frm = new AboutForm()) { frm.ShowDialog(this); } 重要提示:使用ShowDialog时,关闭表单不会Dispose()它,因此使用;见MSDN: 与无模式表单不同,当用户单击对话框的关闭表单按钮或设置Dialo

当显示我的表单(AboutForm)时,我需要将焦点保持在此表单上(用户应该只能单击“确定”按钮)

VS2008中需要哪种设置

谢谢

问候leon22

如果要以模式显示,请使用而不是
show()
。仅此而已

例如:

using(var frm = new AboutForm()) {
    frm.ShowDialog(this);
}
重要提示:使用
ShowDialog
时,关闭表单不会
Dispose()
它,因此
使用
;见MSDN:

与无模式表单不同,当用户单击对话框的关闭表单按钮或设置DialogResult属性的值时,.NET Framework不会调用Close方法。相反,窗体是隐藏的,可以再次显示,而无需创建对话框的新实例。由于显示为对话框的窗体是隐藏的而不是关闭的,因此当应用程序不再需要该窗体时,必须调用该窗体的Dispose方法


@Marc Gravell A-ha,幸好你提到了这一点。还有一件好事,GC在我无知之后进行清理:)