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 :

Plusieurs GridView dans un tableaux à deux dimensions [Débutant]


Sujet :

ASP.NET

  1. #1
    Membre confirmé
    Homme Profil pro
    Etudiant
    Inscrit en
    Octobre 2012
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Etudiant
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2012
    Messages : 154
    Par défaut Plusieurs GridView dans un tableaux à deux dimensions
    Bonjour à tous,

    J'ai une page de mon site qui se connecte à une BDD distante (sql server).

    J'effectue plusieurs requêtes où j'affiche les résultas dans des GridView. Jusque là, pas de problème

    Là où ca coince, c'est quand je dois organiser ca. Le schéma ci dessous illustre ce dont j'ai besoin :


    Les GridView (GV) sont "à l’échelle".

    Pour placer mes gridview, j'ai pensé à faire un tableau à deux dimensions (dont la taille est variable).

    J'arrive à créer mes gridview dynamiquement dans le code-behind (vb.net) mais pas mon tableau.

    Je suis obligé de créer le tableau en VB.NET car la taille est variable et je bloque sur ce point.

    Est-ce que quelqu'un pourrait m'éclairer svp ?

    Merci d'avance
    Images attachées Images attachées  

  2. #2
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2005
    Messages
    165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Novembre 2005
    Messages : 165
    Par défaut
    Bonjour,

    Tu peux peut-être jouer avec les DIV et le "float='left'".
    Je m'explique :
    • tu places dans un 1e temps les Gridview l'un en-dessous des autres
    • chaque Gridview a une taille bien fixée
    • tu entoures chaque Gridview d'un DIV avec style="float:left;"


    Dans cette situation, tes tableaux se mettront côte à côte, mais en fonction de l'espace disponible (si tu changes la taille de ta fenêtre, l'agencement sera différent).
    Pour résoudre ce petit soucis, tu encadres tout ça par un DIV avec une taille donnée.

  3. #3
    Membre chevronné
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2005
    Messages
    482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2005
    Messages : 482
    Par défaut
    Controle "DataList" ?

  4. #4
    Membre éprouvé Avatar de Olivier P.
    Homme Profil pro
    Développeur Front-End chez un éditeur logiciel
    Inscrit en
    Octobre 2012
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur Front-End chez un éditeur logiciel
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2012
    Messages : 83
    Par défaut
    Bonjour,

    Une Table en HTML de la manière suivante ne convient-elle pas pour fixer la structure du tableau ?

    <table>

    <tr>
    <td>gv1.1</td>
    <td>gv1.2</td>
    <td>gv1.3</td>
    <td>gv1.4</td>
    <td>gv1.5</td>
    </tr>

    <tr>
    <td>gv2.1</td>
    <td>gv2.2</td>
    <td>gv2.3</td>
    <td>gv2.4</td>
    <td>gv2.5</td>
    </tr>



    </table>

  5. #5
    Membre confirmé
    Homme Profil pro
    Etudiant
    Inscrit en
    Octobre 2012
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Etudiant
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2012
    Messages : 154
    Par défaut
    Bonjour à tous !

    @yinyang : Je ne touche pas énormément au CSS. Est-ce que tu pourrais m'expliquer un peu plus stp ?

    @Themacleod1980 : Tu penses que l'on peut arriver à mon style d'affichage avec une DataList ?

    @Olivier P. : Oui, c'est ce que je souhaite faire, mais comment générer dynamiquement des tables avec du code-behind ?

    Merci à tous pour vos réponses

  6. #6
    Membre éprouvé Avatar de Olivier P.
    Homme Profil pro
    Développeur Front-End chez un éditeur logiciel
    Inscrit en
    Octobre 2012
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur Front-End chez un éditeur logiciel
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2012
    Messages : 83
    Par défaut
    Opps, pardon j'avais pas vu que le tableau doit être dynamique.

    Dans ce ces tu peux utiliser les objet Table, TableCell , TableRow...

    Check MSDN pour plus d'infos

  7. #7
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2005
    Messages
    165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Novembre 2005
    Messages : 165
    Par défaut
    Si tu as déjà réussi à générer dynamiquement tes Gridview, le mieux est de suivre ce que propose @Olivier P..

    Ce que je propose avec le CSS, c'est simplement que tu génères tes Gridview sans te prendre la tête avec la présentation et d'ajouter 2-3 conteneurs (DIV) pour les placer à ta guise.

  8. #8
    Membre confirmé
    Homme Profil pro
    Etudiant
    Inscrit en
    Octobre 2012
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Etudiant
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2012
    Messages : 154
    Par défaut
    Le problème c'est que je bloque à cet endroit ...

    Une fois la table créée, je ne vois pas comment aller plus loin :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim table2D As Table()() = New Table()() {}
    J'écris ça dans le code-behind mais je suis coincé après ..

  9. #9
    Membre éprouvé Avatar de Olivier P.
    Homme Profil pro
    Développeur Front-End chez un éditeur logiciel
    Inscrit en
    Octobre 2012
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur Front-End chez un éditeur logiciel
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2012
    Messages : 83
    Par défaut
    Le principe est assez simple.

    Table correspond à ton objet Table.
    TableRow correspond à 1 tr.
    Table Cell correspont à 1 td.

    En fonction de tes besoins, tu créés ta structure dynamiquement.

    Fais un tour la dessus pour plus d'infos :

    http://msdn.microsoft.com/fr-fr/libr...(v=vs.80).aspx

  10. #10
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2005
    Messages
    165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Novembre 2005
    Messages : 165
    Par défaut
    Donc dans ton cas, il te suffit de créer:
    • 1 objet Table
    • X objets TableRow pour avoir le nb de lignes souhaitées
    • Y objets TableCell pour chaque cellule de chaque ligne

  11. #11
    Membre confirmé
    Homme Profil pro
    Etudiant
    Inscrit en
    Octobre 2012
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Etudiant
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2012
    Messages : 154
    Par défaut
    Merci à vous, je m'occupe de ça et je vous tiens au courant

  12. #12
    Membre confirmé
    Homme Profil pro
    Etudiant
    Inscrit en
    Octobre 2012
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Etudiant
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2012
    Messages : 154
    Par défaut
    Et voila, c'était pas bien dur en fait

    Si jamais ca peut aider :

    Je récupère le nombre de ligne à créer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     Do While reader.Read()
         arrayBatch.Add(reader.GetString(0))
    Loop

    Puis je créé une table via un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim Table As Table = New Table

    Ensuite je boucle sur mon arraylist
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     For Each batch In arrayBatch
         createGridView(batch.ToString, Table)
    Next

    Ma méthode createGridView contient une arraylist qui elle même contient des procédures pour créer les différents GridView. Cela me permet de gérer facilement l'ordre de création.

    Je boucle sur cette ArrayList

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Dim TableRow As New TableRow()
     
    For Each Grid In listGridView
         Dim TableCell As New TableCell()
         TableCell.VerticalAlign = VerticalAlign.Top
         TableCell.Controls.Add(Grid)
         TableRow.Cells.Add(TableCell)
    Next
     
    table.Rows.Add(TableRow)

    Et pour finir, j'ajoute ma Table à mon PlaceHolder
    Si jamais quelqu'un à besoin d'aide, n'hésitez pas à me demander plus d'explications

    Merci à tous ceux qui m'ont aidés

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

Discussions similaires

  1. Réponses: 9
    Dernier message: 05/01/2007, 20h04
  2. Rechercher dans un tableau deux dimensions
    Par angelevil dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 28/09/2006, 20h29
  3. [Tableaux] Gerer des tableaux à deux dimensions
    Par FrankOVD dans le forum Langage
    Réponses: 2
    Dernier message: 02/12/2005, 15h20
  4. tri alphabétique dans un tableau deux dimensions
    Par *!!cocco!!* dans le forum Algorithmes et structures de données
    Réponses: 7
    Dernier message: 06/12/2004, 21h38

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