我目前正在從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