IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

List<> ToString() Comment implémenté un toString pour une List générique


Sujet :

C#

  1. #1
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Février 2003
    Messages
    2 180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2003
    Messages : 2 180
    Points : 4 496
    Points
    4 496
    Par défaut List<> ToString() Comment implémenté un toString pour une List générique
    Bonjour j'ai crée une class Project qui à une List<Task> tasks
    Dans Task j'ai surchargé la méthode ToString();
    Dans ma class Project j'ai également surchargé ToString() avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    public override string ToString()
            {
                StringBuilder sb = new StringBuilder();
                sb.Append("Name : " + Name + "\r\n");
                sb.Append("<Tasks : \r\n" + tasks.ToString() + "\r\n");            
                return sb.ToString();
            }
    Ca me donne <Tasks>System.Collections.Generic.List`1[ErgSpd.MsProjectToXPlanner.Task]

    bon certe je peux faire un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    foreach (Task t in Tasks)
    {
        sb.Append( t.ToString());
    }
    mais je trouve ça moins joli
    Je ne suis qu'un pauvre débutant alors ne frappez pas si mes idées ne sont pas bonnes

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    203
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 203
    Points : 220
    Points
    220
    Par défaut
    Tu peux faire une méthode d'extension du style

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    public static class CIListExtension
    {
       public static string ToString<T>(this IList<T> o_this, char c_separator)
       {
         ....  
        }
    }
    et après tu peux faire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    public override string ToString()
    {
                StringBuilder sb = new StringBuilder();
                sb.Append("Name : " + Name + "\r\n");
                sb.Append("<Tasks : \r\n" + tasks.ToString(',') + "\r\n");            
                return sb.ToString();
     }

  3. #3
    Membre éprouvé Avatar de sisqo60
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Février 2006
    Messages
    754
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 754
    Points : 1 188
    Points
    1 188
    Par défaut
    bonsoir,

    et en plus simple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    public class ListTaskPersonnalisee : List<Task>
    {
            public override string ToString()
            {
                StringBuilder sb = new StringBuilder();
                sb.Append("Name : " + Name + "\r\n");
                sb.Append("<Tasks : \r\n" + tasks.ToString() + "\r\n");            
                return sb.ToString();
            }
     
    }
    Un âne se croit savant parce qu'on le charge de livres (proverbe américain)

    N'oubliez pas de avant de
    Pas de question techniques par MP, c'est contre la philosophie du forum

Discussions similaires

  1. [Débutant] comment Créer descripteur HOG pour une liste d'image
    Par sahar90 dans le forum Images
    Réponses: 1
    Dernier message: 15/01/2015, 09h01
  2. [DOM] Selected ! Comment définir un choix pour une liste déroulante
    Par tavarlindar dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 29/05/2008, 12h07
  3. comment creer un feature pour une liste?
    Par arioule dans le forum SharePoint
    Réponses: 0
    Dernier message: 31/08/2007, 17h40
  4. Réponses: 4
    Dernier message: 27/08/2007, 12h11
  5. [langage] Comment rajouter des champs dans une liste
    Par toto_titi dans le forum Langage
    Réponses: 4
    Dernier message: 28/08/2003, 14h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo