假設我有以下的委託指定一個委託參數
public delegate void ControlInitializer(Control control);
是否有指定的委託指定輸入參數是什麼類型的控制時的方式的具體型號?例如
而不是
ControlInitializer one = c => ((TextBox)c).Text = "Init Value"
ControlInitializer two = c => ((DropDownList)c).SelectedValue= "-1"
我可以這樣做
ControlInitializer one = (TextBox c) => c.Text = "Init Value"
ControlInitializer two = (DropDownList c) => c.SelectedValue= "-1"
由於文本框是在這種情況下,一個子類控制的?
更新:我還需要將這2個ControlInitialiser代理存儲在例如
Dictionary<string, ControlInitializer>
會在這種情況下,指定
Dictionary<string, ControlInitializer<Control>>
工作,因爲我似乎無法得到它的工作。
在此先感謝。
您可以使用行動而不是定義自己的委託,如果您使用的.NET Framework 3.5。 –
2009-08-04 12:28:34
`動作`也可以使用.net 2.0以及 –
2009-08-04 13:21:13