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

ASP.NET Discussion :

[C#] creer et afficher une table en code behind


Sujet :

ASP.NET

  1. #1
    Membre régulier Avatar de shams
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 210
    Points : 83
    Points
    83
    Par défaut [C#] creer et afficher une table en code behind
    encore moi...

    alors cette fois, je voudrais creer et afficher des tables depuis le code behind -> une table par entrée de ma base de donnée.

    Voici ce que j'ai fait, mais rien ne s'affiche, j'ai du oublier un truc bete...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    					// creation de la table
    					System.Web.UI.WebControls.Table table;
     
    					// pour chaque entrée de la base
    					for (i=0 ; i<dataset.Tables["resume"].Rows.Count ; i++)
    					{		
    						// on design la table 
    						table = new Table() ;
    						TableRow ligne1 = new TableRow();
    							TableCell cellule11 = new TableCell() , cellule12 = new TableCell();
    								cellule11.Text = "NOM:";
    								cellule12.Text = dataset.Tables["resume"].Rows[i]["nom"].ToString();
    								ligne1.Cells.Add(cellule11);
    								ligne1.Cells.Add(cellule12);
    							table.Rows.Add(ligne1);
    						TableRow ligne2 = new TableRow();
    							TableCell cellule21 = new TableCell() , cellule22 = new TableCell();
    								cellule21.Text = "Mail:";
    								cellule22.Text = dataset.Tables["resume"].Rows[i]["mail"].ToString();
    								ligne2.Cells.Add(cellule21);
    								ligne2.Cells.Add(cellule22);
    							table.Rows.Add(ligne2);
    						table.Visible = true;
    					}

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 13
    Points : 16
    Points
    16
    Par défaut
    Rajoutes table.DataBind(), a la fin

  3. #3
    Membre régulier Avatar de shams
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 210
    Points : 83
    Points
    83
    Par défaut
    Citation Envoyé par Dark Matter
    Rajoutes table.DataBind(), a la fin
    a marche pas...

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Août 2003
    Messages
    835
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2003
    Messages : 835
    Points : 1 046
    Points
    1 046
    Par défaut
    Est ce que coté aspx tu as bien créé ta table ? Par ce qu'il ne suffit pas de la déclarer dans le code pour qu'elle apparaisse dans ta page. Sinon concernant la méthode, tu devrais regarder ce qu'est le controle DataGrid, je pense qu'il te servirait

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 13
    Points : 16
    Points
    16
    Par défaut
    ca déchire les DataGrid 8)

  6. #6
    Membre régulier Avatar de shams
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 210
    Points : 83
    Points
    83
    Par défaut
    resalut sphax et remerci pour ta reponse.

    non je n'ai pas crée de table coté aspx, car ma base peut contenir 1 entrée ou bien 100 !!, je ne vais pas faire glisser 100 tables sur ma page aspx...

    je ne souhaite pas non plus me servir de datagrid car, je ne souhaite pas voir tous les champs de ma base...

  7. #7
    Membre éprouvé
    Profil pro
    Inscrit en
    Août 2003
    Messages
    835
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2003
    Messages : 835
    Points : 1 046
    Points
    1 046
    Par défaut
    Non tu n'as pas saisi, tu crées une seule table coté aspx, et dans ton code tu peux lui ajouter autant de ligne que tu veux. Il faut faire attention a donner au nom de ta variable représentant ta table coté code le meme identifiant que coté aspx.

    Sinon pour la DataGrid, tu n'es pas obligé d'afficher tte les colonnes de ta table, simplement par exemple en mettant certaine colonne à Visible = false, ou bien encore plus proprement en désactivant la propriété AutoGenerateColumns de ta grid et en créant explicitement uniquement les colonnes dont tu as besoin.

    Vu que tu debutes en asp.net, je te conseille vivement la lecture d'un bon bouquin d'initiation à cette techno. C'est toujours plus agréable de comprendre ce que l'on fait, et ici sur les forums tu ne pourras avoir d'explication que sur des points assez précis, et tu risques fort de passer a coté de choses importantes.

  8. #8
    Membre régulier Avatar de shams
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 210
    Points : 83
    Points
    83
    Par défaut
    moi ce que je voulais a la base, c'etait de créer 1 table par entrée.
    Donc 1 entrée -> 1 table
    10 entrée -> 10 table

    Ainsi, mes tables apparaissaient les unes en dessous des autres.
    Mais en fait, je crois que je vais faire comme t'as dis: 1 table, et pour separer mes differentes entrées, je vais essayer de faire des Rows invisbles, ca devrait marcher...

    merci encore et a bientot!

  9. #9
    Membre éprouvé
    Profil pro
    Inscrit en
    Août 2003
    Messages
    835
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2003
    Messages : 835
    Points : 1 046
    Points
    1 046
    Par défaut
    Autant pour moi , je n'avais pas fait attention. Dans ce cas la seule raison pour laquelle tes tables ne s'affichent pas, c'est qu'il faut les ajouter a la page. Soit directement (Page.Controls.Add(Matable)) soit en mettant dans ta page un placeHolder et en y ajoutant tes tables. Mais sache que ce n'est vraiment pas la maniere la plus jolie de faire ce que tu cherches a faire

  10. #10
    Membre régulier Avatar de shams
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 210
    Points : 83
    Points
    83
    Par défaut
    ok merci pour toute ton aide sphax!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. renommage d'une table par code
    Par silatchom dans le forum Access
    Réponses: 3
    Dernier message: 30/06/2006, 17h04
  2. Afficher une table dans un formulaire
    Par noob_vba dans le forum IHM
    Réponses: 8
    Dernier message: 20/06/2006, 16h54
  3. Comment Afficher Une Table A L'aide Quick Report
    Par lnpt23 dans le forum Bases de données
    Réponses: 8
    Dernier message: 20/06/2006, 15h56
  4. Afficher une table masquée
    Par Tierisa dans le forum Access
    Réponses: 2
    Dernier message: 14/06/2006, 09h08
  5. Réponses: 24
    Dernier message: 02/06/2006, 10h58

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