设计新表单的推荐方法是什么?
我应该致电new MyForm().ShowDialog()
或者改为将ShowDialog()改为构造函数?
MyForm(){
...
this.ShowDialog();
}
答案 0 :(得分:4)
如果希望显示表单,请明确调用ShowDialog()
。
我从未见过使用过第二种惯例。它可能也会引起问题,因为你不希望调用类的构造函数来在屏幕上显示模态对话框。此外,如果您需要在表单上设置任何状态,并且由于某种原因无法在构造函数中执行此操作,则最终会在表单正确初始化之前显示对话框。
此外,从构造函数中调用ShowDialog()
意味着您无法在触发对话框显示的代码中获取DialogResult
返回值,这意味着您可以&#39 ; t告诉用户是否选择了ok / cancel / yes / no / etc ......