En supposant que je le délégué à la suiteSpécification du type spécifique d'un délégué Argument
public delegate void ControlInitializer(Control control);
est-il un moyen pour spécifier le délégué de préciser quel type de contrôle du paramètre d'entrée est? par exemple.
Au lieu de
ControlInitializer one = c => ((TextBox)c).Text = "Init Value"
ControlInitializer two = c => ((DropDownList)c).SelectedValue= "-1"
Puis-je faire quelque chose comme
ControlInitializer one = (TextBox c) => c.Text = "Init Value"
ControlInitializer two = (DropDownList c) => c.SelectedValue= "-1"
Comme Textbox est une sous-classe de contrôle dans ce cas?
Mise à jour: J'ai également besoin de stocker ces deux délégués ControlInitialiser dans un e.b.
Dictionary<string, ControlInitializer>
va spécifier
Dictionary<string, ControlInitializer<Control>>
Les travaux dans ce cas que je ne peux pas sembler le faire fonctionner.
Merci d'avance.
Vous pouvez utiliser l'action au lieu de définir votre propre délégué si vous utilisez .NET Framework 3.5. –
'Action' est également disponible dans .net 2.0 –