我認爲標題有點難以理解。這就是爲什麼我會試圖更清楚地解釋我自己: 我有一個ClickLabel,它應該實現一個特定的方法,可以在構建過程中作爲參數傳遞,也可以稍後執行特定的操作。 重點是,不是每個ClickLabel我將執行應該執行相同的任務。C#方法作爲參數傳遞,可以訪問接收類的私有成員
我現在可能只是太累了,現在要自己解決這個問題,但我想從你那裏得到一些專業答案,以便我能夠儘可能輕鬆地解決這個問題,因爲我知道否則它會永遠困擾我。
我認爲標題有點難以理解。這就是爲什麼我會試圖更清楚地解釋我自己: 我有一個ClickLabel,它應該實現一個特定的方法,可以在構建過程中作爲參數傳遞,也可以稍後執行特定的操作。 重點是,不是每個ClickLabel我將執行應該執行相同的任務。C#方法作爲參數傳遞,可以訪問接收類的私有成員
我現在可能只是太累了,現在要自己解決這個問題,但我想從你那裏得到一些專業答案,以便我能夠儘可能輕鬆地解決這個問題,因爲我知道否則它會永遠困擾我。
如果我得到你的權利,你應該通過一個委託作爲參數,然後將其指定爲事件處理程序ClickLabel
聽起來像是你需要創建一個IClickLabel接口,定義你想要然後執行你的方法可以定義實現IClickLabel的不同類。你的構造函數的參數是Type IClickLabel,它可以確保你傳入的每個類都有可用的調用方法 - 每個實現IClackLabel的類都可以以不同方式實現方法中的邏輯。
是否有任何理由不能使用'System.Action'並將其傳遞給您的標籤? –
如果你的delagate包裝的方法可以訪問私人成員,那麼你應該可以。但是,由於這可以改變它不是一個好主意。使用事件或界面來區分各種任務。 – JNYRanger