2011-01-10 63 views
4

我有一個包含多個按鈕的Winform單例類。按鈕單擊事件在單獨的類中進行處理和監視,這些類對單例winform類具有引用/實例。很顯然,當用戶點擊按鈕時,相關的任務將在相關的類中處理。C#類問題

我的問題是,監視事件的類是完全封裝的,這意味着無需調用任何方法來工作。他們唯一需要的就是要觸發事件並執行任務。我應該在哪裏創建這些類的對象?我應該簡單地在加載時在Winform中創建對象嗎?對象不需要進一步的交互,他們只需要一個實例來監視按鈕點擊事件。希望我已經解釋清楚了。

謝謝。

回答

1

如果您正在製作一個真實的觀察者模型,那麼該關聯屬於控件的創建者。

如果您只是將邏輯推入單獨的類中,那麼它更像是委託模式,它應該是擁有引用的控件。

+0

我不推動任何東西到單獨的類,他們只需要知道用戶何時按下按鈕。我認爲這位觀察員適合更清潔。謝謝。 – 2011-01-10 11:20:19

1

是的,我認爲窗體的Load事件是創建這些對象的邏輯地方。或者也許是構造函數。

您不能在表格構建完成之前創建它們,因爲那時不會有任何按鈕。而且你不應該創造它太多,因爲那樣你可能會錯過一些事件。所以表單自己的事件是創建它們的最佳地點。或者至少將他們綁定到事件上。這些類也是單身人士嗎?