【发布时间】:2014-11-12 02:50:55
【问题描述】:
推荐的新表单设计方法是什么?
我应该打电话给new MyForm().ShowDialog()
还是将 ShowDialog() 改为构造函数?
MyForm(){
...
this.ShowDialog();
}
【问题讨论】:
标签: c# winforms forms visual-studio-2010
推荐的新表单设计方法是什么?
我应该打电话给new MyForm().ShowDialog()
还是将 ShowDialog() 改为构造函数?
MyForm(){
...
this.ShowDialog();
}
【问题讨论】:
标签: c# winforms forms visual-studio-2010
当您希望显示表单时,明确调用ShowDialog()。
我从未见过使用第二种约定。它也可能会导致问题,因为您不会期望调用类的构造函数来在屏幕上显示模式对话框。此外,如果您需要在表单上设置任何状态,并且由于某种原因无法在构造函数中执行此操作,则最终会在正确初始化表单之前显示对话框。
此外,从构造函数调用ShowDialog() 意味着您无法在触发显示对话框的代码中获取DialogResult 返回值,这意味着您无法判断用户是否选择了好的/取消/是/否/等等...
【讨论】: