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 :

Concaténation d'une string et un int comme nom de variable


Sujet :

C#

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 8
    Points : 5
    Points
    5
    Par défaut Concaténation d'une string et un int comme nom de variable
    Bonjour bonjour,

    Je débute en C# et je bloque...

    Comment peut on faire pour avoir un nom de variable dynamique composé d'une string fixe et d'une int qui s'incrémente ?

    En PHP j'aurais fait ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    for($i = 0; $i < 5; $i++)
    {
           int ${"test".$i} = 1337;
    }
    J'aimerais juste savoir comment faire mais en C# ^^

    Merci d'avance pour vos réponses

    Baptiste

  2. #2
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 314
    Points
    13 314
    Par défaut
    Quel interêt de faire un truc pareil ? (au demeurant on peut le faire par compilation dynamique mais j'ai l'impression que tu es en train de transposer des habitudes d'un langages de script vers un langage managé, ce qui n'a absolument aucun sens).

  3. #3
    Expert éminent
    Avatar de Lyche
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2007
    Messages
    2 523
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 523
    Points : 6 775
    Points
    6 775
    Billets dans le blog
    4
    Par défaut
    Il vaux mieux utiliser les listes ou les tableau, ça te sera plus facile. tu gères la position de ta donnée dans un tableau(ou liste) à l'aide d'un indice (ton $i) dans ton exemple.
    c# n'est pas conçut de la même manière, ni pour les mêmes choses que php. Lorsque tu dois gérer un ensemble d'élément de façon dynamique sous php, il a un équivalent sous c#, les collection, les dictionnaires, les listes (liste non exhaustive).

  4. #4
    Nouveau membre du Club
    Inscrit en
    Avril 2007
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 42
    Points : 29
    Points
    29
    Par défaut Pour la horde
    Citation Envoyé par VilainMelkor Voir le message
    Bonjour bonjour,
    En PHP j'aurais fait ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    for($i = 0; $i < 5; $i++)
    {
           int ${"test".$i} = 1337;
    }
    Lyche a raison, tu devrais plutôt faire un tableau ce qui te donnerait :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    for(int i = 0; i < 5; i++)
    {
           test[i] = 1337;
    }
    C# n'est pas un langage interprété comme le PHP, tu ne peut donc pas définir le nom de tes variables ainsi. Mais la solution du tableau est à mon avis très efficace, surtout que tu as plusieurs méthodes fort utiles sur le tableau, comme la taille par exemple...

  5. #5
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 314
    Points
    13 314
    Par défaut
    PHP ne gére pas les tableaux ? (la question peut paraitre bête mais je ne connais pas du tout ce langage : la seule fois où j'ai jeté un oeil à un code source, ça m'a donné mal au crane).

  6. #6
    Nouveau membre du Club
    Inscrit en
    Avril 2007
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 42
    Points : 29
    Points
    29
    Par défaut C'est pas faux
    Il n'y a pas de question bête... enfin, celle-ci ne l'est pas en tout cas...

    Si biensûr, PHP gère les tableaux (array). Il devait y avoir une raison particulière pour laquelle VilainMelkor tu aurais procéder ainsi en PHP et non pas avec un array ?

  7. #7
    Expert éminent
    Avatar de Lyche
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2007
    Messages
    2 523
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 523
    Points : 6 775
    Points
    6 775
    Billets dans le blog
    4
    Par défaut
    Citation Envoyé par [Nean] Voir le message
    Il n'y a pas de question bête... enfin, celle-ci ne l'est pas en tout cas...
    L'ignorant pose une question, seul l'idiot la pose 2 fois

    Je pense que même en php il est préférable de gérer ses variables en tableau. Mais il est vrai que le langage scripté permet de faire autrement.

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    Bah en fait je récupère des résultat en base de donnée et je souhaite les afficher les uns en dessous des autres. Il s'agit d'une liste de films avec un bouton à coté du nom de chaque film permettant d'accéder au détail.
    Du coup je pensais instancier un label et un bouton pour chaque ligne, c'est la première solution qui m'est passé par la tête.

  9. #9
    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
    salut,
    C'est pas la meilleur solution mais si tu veux ajouter des labels et des boutons tu peux faire comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    for (int i = 0 ; i < NbFilms;i++)
    {
      Label lab = new Label();
      lab.name = string.Concat("Label",i.ToString());
      Button bt = new Button();
      bt.Name = string.Concat("Bouton",i.ToString());
      bt.Click += new EventHandler(/*La méthode à invoquer*/)
    }
    Tu peux faire un calcul pour décider de leur emplacement...

  10. #10
    Expert éminent
    Avatar de Lyche
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2007
    Messages
    2 523
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 523
    Points : 6 775
    Points
    6 775
    Billets dans le blog
    4
    Par défaut
    Tu peux gérer la création d'un tableau pour ton label et pour tes boutons aussi. Je ne sais pas comment tu t'en sors et si tu comprend bien tout le c# mais en gros, tu fais une boucle qui génère un ligne avec le label et le bouton qu'il te faut. C'est un moyen de mise en page très pratique, et assez simple avec c#. Si tu es intéressé par les tableau et les labels je te monterais un code qui complètera celui de sisqo60

Discussions similaires

  1. Concaténation d'une string dans boucle
    Par flashgordone dans le forum C++
    Réponses: 20
    Dernier message: 03/06/2012, 16h08
  2. [SQL-Server] Concaténation d'une chaine de caractère avec un nom de table SQL
    Par Balthazar117 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 15/03/2011, 14h42
  3. Réponses: 2
    Dernier message: 23/04/2009, 18h28
  4. Utiliser une string avec tag XML comme fichier XML
    Par kaygee dans le forum ASP.NET
    Réponses: 1
    Dernier message: 20/03/2009, 15h52
  5. [C#] Diviser une String par un Int
    Par ArHacKnIdE dans le forum Windows Forms
    Réponses: 8
    Dernier message: 09/03/2006, 15h48

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