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 :

DataSource & GridView


Sujet :

ASP.NET

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 47
    Par défaut DataSource & GridView
    Bonjour à tous,

    Cela doit faire bientôt 3 mois que je fais du C# .Net pour le travail et je dois bien avouer que par moment je galère grave...

    Mon problème actuel m'a l'air assez simple: J'ai un tableau de d'objets ([] pas IList<>) que je dois afficher dans un GridView. De plus il faut que j'ajoute la dernière ligne qui somme chaque colonne (sauf la 1ère colonne qui doit s'appeler "Total"). Et je n'ai absolument aucune idée de comment faire.

    Ce que j'ai pour le moment: (à noter que le GridView est en lecture seule)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <asp:GridView ID="CostTable" runat="server" CellPadding="2" CssClass="DataGrid" EnableViewState="false">
    	<HeaderStyle CssClass="GridHeader" />
    	<RowStyle CssClass="GridRow" />
    	<AlternatingRowStyle CssClass="GridRowAlternate" />
    </asp:GridView>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    CostEntry[] cost = ....
    this.CostTable.DataSource = cost;
    this.CostTable.DataBind();
    Venant du Java mon réflexe est le suivant : Trafiquer le modèle pour lui ajouter une ligne de total, et trafiquer le renderer pour changer le style de la dernière ligne. Par contre en C# je ne sais pas comment faire. Pouvez vous m'aider?

    Par ailleurs, les colonnes pour le moments sont les Properties de mon objet, est-il possible de spécifier les colonnes que l'on veut voir et l'ordre dans lequel elles doivent être ?

    Merci de votre aide.

    Nuwanda

    PS: Si vous avez un lien vers une bonne documentation en rapport avec les GridView et les DataSource ce serait génial, ce sont mes dernières "bêtes noires".

  2. #2
    Membre éprouvé Avatar de Gunny
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2007
    Messages
    194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Danemark

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2007
    Messages : 194
    Par défaut
    En utilisant le footer tu devrais t'en sortir je pense. J'ai trouvé ça, ça devrait t'être utile : http://aspalliance.com/782

  3. #3
    Membre Expert Avatar de Arthis
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 265
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Italie

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 265
    Par défaut
    Pour modifier l'ordre de tes colonnes, il faut que tu precises a ta gridview auelels colonnes doivent être affichee commence par rajouter autogeneratecolumns a false et ensuite jette un coup d´oeil sur les bounfield et les templatefield...

    Regarde sur developpez il devrait y avoir un bon tuto sur les gridview meme si je ne connais pas l adresse
    a+

  4. #4
    Membre chevronné
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2004
    Messages
    417
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2004
    Messages : 417
    Par défaut
    Pour tes colonne dans ta gridview il faut utilser la section columns:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <Columns>
         <asp:BoundField HeaderText="field" DataField="Property1" />
         <asp:BoundField HeaderText="field2" DataField="Property2"/>
         <asp:BoundField HeaderText="field3" DataField="Property3"/>
    </Columns>
    Pour le datafield ca dépend de ce que tu as comme objet dans ton IList

    Aprés je te conseil de regarder un peu tous les tutorial sur google car il y'a vraiment beaucoup d'utilisation différentes suivant ton besoin.
    La gridview aide quand tu connais de l'autre a tous appréhender ca prend un peu de temps.

    tu trouvera ici une piste pour ton footer:
    http://msdn.microsoft.com/en-us/library/ms972833.aspx

    Il faut que tu te mette sur l'événement GridView_RowDataBound

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 47
    Par défaut
    Merci beaucoup tout le monde,

    Cela fonctionne à peu près comme je souhaite.

    J'ai une question un peu plus générale maintenant. Je suis assez content de mon design, le choix des colonnes et la présentation dans l'aspx et la source des données en C#. En effet, je ne suis pas vraiment fan de mettre le nom de la procedure SQL, le user & password dans le aspx. Je trouve que ca fait crade d'un point de vue design, je préfère avoir le Code métier, accès au données d'un coté et le code UI de l'autre.

    Qu'en dites-vous ? Quel est le bon design en ASP.NET, Quelle est la bonne séparation Code Métier / UI ?

  6. #6
    Membre Expert Avatar de Arthis
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 265
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Italie

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 265
    Par défaut
    JE suis d'accord avec toi: Plus on sépare, mieux c'est...

    perso, j´utilise une classe d'acces aux donnees aue j'interface avec un objectdataview: Mon gridview va alors chercher ses infos dans cet objectdataview.

Discussions similaires

  1. GridView & DataSource
    Par gufra dans le forum ASP.NET
    Réponses: 4
    Dernier message: 07/04/2008, 09h16
  2. [C# - GridView] Mode édition (sans DataSource).
    Par Taxol dans le forum ASP.NET
    Réponses: 4
    Dernier message: 23/12/2007, 00h18
  3. Lier un dataSource à une GridView par le code
    Par boullery dans le forum ASP.NET
    Réponses: 14
    Dernier message: 27/07/2007, 10h23
  4. GridView DataSource Dynamique
    Par hippoX dans le forum ASP.NET
    Réponses: 1
    Dernier message: 11/07/2007, 12h10
  5. [C# .NET2.0]Gridview et Datasource
    Par Oufti dans le forum ASP.NET
    Réponses: 3
    Dernier message: 13/03/2007, 07h45

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