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#] DataGrid qui contient un lien vers une page


Sujet :

ASP.NET

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2004
    Messages : 75
    Points : 44
    Points
    44
    Par défaut [C#] DataGrid qui contient un lien vers une page
    Bon j'ai un datagrid qui fonctionne bien : http://infosalvage.wiredlinux.ca/infosalvage/CopartCarList.aspx

    Je désire que quand on click sur view il affiche un autre page j'ai donc créer un événement comme celui :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    public void Link_Car_Detail(object sender, DataGridCommandEventArgs e)
    {
     
    }
    Bon pour commencé j'ai mit dans l'événement le no de ligne a afficher et cela fonctionne mais la j'aimerais être rediriger vers une autre page, à l'occurance ShowDetail.aspx mais je n'ai pas réussi. J'ai chercher dans plusieurs tuto avant de poster cependant rien trouver de constructif.

    Qqu aurait une idée pour faire se que je désire

    merci

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2004
    Messages : 75
    Points : 44
    Points
    44
    Par défaut
    J'ai solutionner le problème cependant je sais pas comment car j'ai fait sa sur le pif.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <asp:HyperLinkColumn HeaderText="Item" DataNavigateUrlField="lot" DataNavigateUrlFormatString="ShowDetail.aspx?lot={0}" DataField="item"></asp:HyperLinkColumn>
    Bon comme j'ai dit c'est bien sa fonctionne mais je ne comprend pas le fonctionnement comment le {0} peu équivaloire a ma colonne lot de mon datagrid.

    Qqu pourrais m'expliquer j'aime bien comprendre se que je fait.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2004
    Messages : 75
    Points : 44
    Points
    44
    Par défaut
    En continuité avec ceci j'aurais une ou deux question sur la meilleur façon d'afficher les informations.

    J'ai un datagrid qui contient tout les données, il n'y a pas de modif a faire c'est seulment de l'affichage.

    Quand j'ai la liste d'afficher il y a une colone avec un lien pour passer à la page de detail. (ceci fonction) Je lui passe dans l'url le id de l'item choisi et la page suivante affiche le id sans problème. Cependant je trouve sa stupid de faire un autre datagrid seulement pour avoir les info complète de l'item choisi. Je me demendais si c'était possible de passer l'index de la ligne choisi au lieu du id. Mais avec sa je doit inclure tout les données dans mon datagrid (il y a une 100aine de colone dans la db) ce qui va avoir comme effet des tout afficher dans la liste précédente.

    Bon a se que je voix j'ai 2 facon dont je peux procéder.

    1. Créer un nouveaux datagrid qui contient les info complet de l'item choisi pour ensuite pouvoir les afficher dans des label. Ce qui vient à avoir un datagrid qui contient la liste des item à afficher dans le listing et que lorsque je choisi un item il y a un autre datagrid qui va chercher tout le reste des info qui ne sont pas dans le premier datagrid.

    2. Intégré tout les info de tout les item afficher dans un datagrid et cacher les colonne que je n'ai pas de besoin dans la liste des item et passer l'index de la ligne en url pour ensuite pouvoir afficher dans des label.

    Perso j'aimerais mieux avoir seulement un datagrid , cela doit être mieux pour la rapidité (je croix ). Est-ce se que ma facon de pensser est bonne ou complètement absurde .

    Merci, j'espère être claire

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2003
    Messages : 13
    Points : 12
    Points
    12
    Par défaut
    Comment veux tu faire avec un seul datagrid pour y acceder depuis ta fenetre détail ?
    Dans ta page détail, si tu ne modifie pas les infos et que tu veux juste les afficher dans des Label et non pas dans un tableau tu devrais utiliser un DataSet seul sans Datagrid. (et alimenter tes labels avec ton DataSet)
    De plus ca ne va pas etre tres performant de recuperer 100 colonnes pour n'en afficher que 6...

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2004
    Messages : 75
    Points : 44
    Points
    44
    Par défaut
    Ok je me suis mélanger c'est bien de dataset que je parle. DOnc je seras mieux de faire deux dataset différent. Un qui contient toutes les info pour le véhicule choisi et de laisser l'autre dataset avec les 5 ou 6 colone que j'ai besoin pour l'affichage de la list de sélection.

    Merci de ton commentaire c'est très apprécié.

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2003
    Messages : 13
    Points : 12
    Points
    12
    Par défaut
    Personnellement je ferais comme çà :
    - un dataset dans ta page générale avec 5-6 colonnes et plein de lignes.
    - pour la page détail et si tu ne fais que visualiser les infos : utilise plutot un DataReader car si j'ai bien compris tu n'auras qu'une seule ligne retournée (celle correspondant à l'identifiant passé en parametre). Donc utiliser un dataset serait un peu gourmant dans ce cas précis.
    Je pense que tu peux acceder aux données de ton datareader comme çà :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    monLabel.Text = monDataReader["maColonne"].ToString();

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2004
    Messages : 75
    Points : 44
    Points
    44
    Par défaut
    Super un grand merci mik, ta répondu a tous mes question et je vais utiliser le DataReader.

    Encore Merci.

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

Discussions similaires

  1. lien vers une page qui est une frame
    Par laurentSc dans le forum Balisage (X)HTML et validation W3C
    Réponses: 22
    Dernier message: 10/03/2011, 17h32

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