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 :

probleme de remplissage de mon gridview


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Inscrit en
    Septembre 2002
    Messages
    270
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 270
    Par défaut probleme de remplissage de mon gridview
    Hello à tous,

    Voici mon problème


    Je veux afficher les données d'un XML un peu mal fichu(je dois l'accepter sans rechigner) dans un gridview.

    je rempli donc un dataset avec mon fichier xml

    et je le passe en datasource à mon gridview.

    Cela fonctionne à merveille.

    mais

    1) la premier champ de chaque row doit etre un hyperlink vers la même page avec une variable en get.


    2) le dernier champs de chaque rows recois une valeur true ou false et je dois afficher une photo ou l'autre selon ce boolean.

    3) j'ai parfois un champs d'une row qui peut etre aussi un hyperlink.

    pourriez-vous m'aider?

    merci

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    360
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 360
    Par défaut
    où est ton problème ? qu'as tu déjà essayé?

  3. #3
    Membre très actif
    Inscrit en
    Septembre 2002
    Messages
    270
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 270
    Par défaut
    Oups sorry j'ai oublié de mettre ma source

    Donc ce code fonctionne très bien actuellement, je suis obligé de concevoir manuellement mon dataset, car je n'ai aucune référence de nom dans mon XML.

    J'ai essayer d'ajouter en colonne un hyperlinkfield, mais je bloque

    j'ai essayer dans mon code coté HTML de lui déclarer les colonnes dont j'ai besoin, mais au lieu de 7 colonnes j'en ai 14 et celle crée du coté HTML sont vides.

    J'ai également essayer de créer mon datagrid directement sans passer par un dataset, mais mon code foire, ou alors j'ai la meme valeur sur chaque rows

    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
     
            dt.Columns.Add(New DataColumn("Colonne 1", GetType(String)))
            dt.Columns.Add(New DataColumn("Colonne 2", GetType(String)))
            dt.Columns.Add(New DataColumn("Colonne 3", GetType(String)))
            dt.Columns.Add(New DataColumn("Colonne 4", GetType(String)))
            dt.Columns.Add(New DataColumn("Colonne 5", GetType(String)))
            dt.Columns.Add(New DataColumn("Colonne 6", GetType(String)))
            dt.Columns.Add(New DataColumn("Colonne 7", GetType(String)))
     
            Dim i As Integer = 1
            For Each oNode As XmlNode In xNode
                With DLLAccess
                    dt.Rows.Add(.getRecordsetField("lrs_var", i, 0), .getRecordsetField("lrs_var", i, 1), .getRecordsetField("lrs_var", i, 5), .getRecordsetField("lrs_var", i, 8), .getRecordsetField("lrs_var", i, 2), .getRecordsetField("lrs_var", i, 6), .getRecordsetField("lrs_var", i, 14))
                    i = i + 1
                End With
            Next
     
            ds.Tables.Add(dt)
            grvSoldes.AutoGenerateColumns = True
            grvSoldes.DataSource = ds
            grvSoldes.DataMember = "Table"
            grvSoldes.DataBind()

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    360
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 360
    Par défaut
    il faut que tu utilises des templateFields

    http://www.asp.net/learn/data-access...ial-12-cs.aspx

  5. #5
    Membre très actif
    Inscrit en
    Septembre 2002
    Messages
    270
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 270
    Par défaut
    je crois que ce tuto m'embrouille encore plus qu'autre chose.

    j'ai crée un objectDataSource mais pas moyen d'attribuer a un hyperlinkfield ou autre une valeur venant de cet objet

    je pensais aussi créer mes éléments et leurs attribuer une valeur dans mon for each sans passer par mon dataset mais je ne vois pas comment je peux faire ca

  6. #6
    Membre chevronné
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    360
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 360
    Par défaut
    j'ai l'impression que tu n'utilises pas bien le gridview.

    Tu dois avoir d'un coté ta source (ton dataset pour toi) et de l'autre ton gridview qui va "lire" sa datasource et afficher les données. Pour cela tu peux définir un template à ton gridview

    Imaginons que tu aies un Dataset avec 3 colonnes (Colonne1, Colonne2, et Colonne3 qui contient le lien)

    Tu definis la datasource du gridview et tu fais un databind

    tu defini un template de colonne pour ton gridview coté aspx

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" >  
    	<Columns>  
    	<asp:TemplateField HeaderText="Mon super lien">  
    		<ItemTemplate>  
    			 <asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# Bind("Colonne3")' />
    		</ItemTemplate>  
    	</asp:TemplateField>  
    	<asp:BoundField DataField="Colonne1" HeaderText="Ma Colonne1"/>  
    	<asp:BoundField DataField="Colonne2" HeaderText="Ma Colonne2"/>  
    	</Columns> 
    </asp:GridView>

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

Discussions similaires

  1. Probleme lors du databind de mon gridview
    Par kaygee dans le forum ASP.NET
    Réponses: 4
    Dernier message: 17/06/2009, 21h51
  2. [Debutant] Probleme d'affichage de mon Gridview
    Par sebium dans le forum ASP.NET
    Réponses: 1
    Dernier message: 26/05/2007, 14h05
  3. Réponses: 15
    Dernier message: 23/05/2005, 16h08
  4. Réponses: 13
    Dernier message: 26/04/2004, 19h32
  5. Réponses: 7
    Dernier message: 17/01/2004, 17h13

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