J'ai deux méthodes pour deux contrôles différents, de faire la même action:
public void DisplayTextForControl<T>(T pControl, string pText)
{
pControl.Text = pText;
}
3 Réponses :
Pas besoin d'ajouter des génériques
Essayez: P>
public void DisplayTextForControl(Control pControl, string pText)
{
pControl.Text = pText;
if(pControl is LinkLabel llbl)
{
//Perform link label related actions
}
else if(pControl is Label lbl)
{
//Perform label related actions
}
}
Vous n'avez toujours pas besoin d'une méthode générique. Une méthode d'extension simple fera.
Si vous devez vraiment le faire avec des génériques, vous devez trouver un ancêtre commun des deux types E.g Je ne sais pas pourquoi vous avez besoin de génériques dans ce cas. P> p> Control code>. Alors quelque chose comme ...