假设我有以下的委托指定一个委托参数
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