我目前正在从VB转换到C#,并在注册我对事件的兴趣方面遇到一些问题。在哪里注册C#事件?
使用VB时,仅仅是指定方法Handles
和事件,通常这是通过使用对象事件列表生成的。虽然我可以很容易地在C#中使用Class.event += delegate
,但我不确定放置代码的最佳位置。
我最好把它放在InitializeComponent()
里面,根据生成的代码(比如说,如果你从from设计器中选择事件),还是应该把它放在构造器中以便更好的读取/维护。如果在构造函数中,应该在调用InitializeComponent()
之前还是之后?
我看到你仍然可以做到这一点,但我也有一个DLL引发事件的类,我必须通过代码注册这些类。 – themaninthesuitcase 2010-03-15 15:15:37
如果您需要注册某些业务对象的事件,我会将其与UI事件分开(因为它们的用途完全不同)。理想的做法是在您的业务逻辑类中进行,如果它不可能比在例如加载表单的事件处理程序。 – Grzenio 2010-03-15 15:19:31