0
votes

Refacteur deux méthodes dans une (génériques?)

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;
}


0 commentaires

3 Réponses :


3
votes

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
    }
}


0 commentaires

0
votes

Vous n'avez toujours pas besoin d'une méthode générique. Une méthode d'extension simple fera. XXX


0 commentaires

0
votes

Si vous devez vraiment le faire avec des génériques, vous devez trouver un ancêtre commun des deux types E.g Control . Alors quelque chose comme ... xxx

Je ne sais pas pourquoi vous avez besoin de génériques dans ce cas.


0 commentaires