2009-10-26 53 views

回答

3

如果表单的状态的有效性取决于属性被设置,则设置在构造的性质。您总是希望您的对象在构建完成后处于有效状态。

0

在构造函数中。通常情况下,你需要设置一些表单,或者在实际显示表单之前设置其他类型的表单。在这些情况下,甚至在表单实际加载之前,您会希望设置所有实例变量。

0

构造应负责初始化,除非你有特殊需要或依赖初始化表格装入变量,比如它初始化的东西,是依赖于别的东西。

2

呀,但要小心你在一个窗体的构造做了什么,为可视化设计器,当您打开编辑的形式将运行此。

如果你把任何东西在这里,依赖于其他的东西被设立在运行时,很容易引起错误,你将无法编辑表单布局。

我会说把它放在窗体的Load这个原因。

+0

你是对的,你需要小心。但是,如果要设置的属性是类不变式,那么意味着除非设置了这些属性,否则没有其他客户端应该触摸该对象,在这种情况下,构造函数是唯一合理的位置。推论:依赖于运行时初始化的属性不应该是设计器管理类的类不变量。 – 2009-10-26 17:09:34

0

你应该初始化在构造函数的性质。每个表单实例显然只调用一次构造函数。每次显示表单时都会调用加载事件处理程序。此外,如果您在加载事件处理程序中执行了初始化工作(例如填充组合框),则必须先编写一些非常难看的代码,以便在显示表单之前在该组合框中预先选择一个值。这只是一个例子。希望有所帮助。

相关问题