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 :

Tri gridview avec Template


Sujet :

ASP.NET

  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2006
    Messages
    65
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 65
    Par défaut Tri gridview avec Template
    Bonsoir,

    Je me permets de vous solliciter car j'ai recherche pendant pas mal de temps, sur ce forum notamment, mais je ne trouve pas réponse à mon problème.

    J'ai un gridview composé de boundfield et de template.
    Je remplis mon gridview avec un ObjectDataSource.

    Je ne sais pas comment faire pour trier le gridview sur des "colonnes template",mais pour les boundfield celà fonctionne normalement.

    Voici la déclaration de mon ObjectDataSource:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <asp:ObjectDataSource 
     
         ID="ObjectProspect" 
         SelectMethod="getListClient" runat="server" 
         TypeName="BLLnodel.ManagerProspect, BLLNodel, Version=1.0.0.0, Culture=neutral, PublicKeyToken=d0b8cf232071dbb2" SortParameterName="sortExpression" >
     
    </asp:ObjectDataSource>
    Voici la déclaration du gridview:
    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
    25
    26
    27
    28
    29
    30
     
    <asp:GridView ID="gv_prospect" runat="server" 
        AllowSorting="True" AutoGenerateColumns="False"
        DataSourceID="ObjectProspect" 
        AllowPaging="True"
        DataKeyNames="numProspect"  >
     
        <Columns>       
           <asp:TemplateField SortExpression="raison_sociale">
              <HeaderTemplate>
                    <asp:LinkButton ID="lb_raison" runat="server" 
                                          Text="Raison Sociale">
                    </asp:LinkButton>
              </HeaderTemplate>
              <ItemTemplate>
                    <asp:LinkButton ID="RaisonProspect" runat="server" 
                                          Text="RaisonProspect">
                    </asp:LinkButton>
              </ItemTemplate>
          </asp:TemplateField>
     
          <asp:BoundField DataField="DatePriseContact" 
                                 HeaderText="Date de prise de contact"   
                                 SortExpression="date_prise_contact" 
                                 DataFormatString="{0:d}" HtmlEncode="False" >
          </asp:BoundField>
     
       </Columns>
     
    </asp:View>
    NB:Je n'ai pas mis toutes les colonnes pour une lecture simplifiée!

    -La propriété sortParameterName est égale à "sortExpression"

    -La méthode "getListClient" renvoi une liste d'objet.
    Je lui passe en paramètre "sortExpression".

    J'aimerais donc pouvoir faire un tri sur ma colonne "Raison sociale",via le clic sur le linkbutton (ou autre chose si il y a mieux!).

    En vous remerciant par avance,

    Vincent

  2. #2
    Membre Expert
    Avatar de Mehdi Feki
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    1 113
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 113
    Par défaut
    Je ne vois pas de probleme dans ton code. Vérifie en mode debug la valeur de sortExpression de la méthode getListClient quand tu tri sur une colonne de type TemplateField.

    Juste pour tester si tu transforme le TemplateField en un BoundField sur la colonne Raison Social, est-ce que ça refonctionne ?

  3. #3
    Membre confirmé
    Inscrit en
    Janvier 2006
    Messages
    65
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 65
    Par défaut
    Citation Envoyé par mehdi_tn
    Je ne vois pas de probleme dans ton code. Vérifie en mode debug la valeur de sortExpression de la méthode getListClient quand tu tri sur une colonne de type TemplateField.
    Je ne rentre jamais dans le méthode getListeClient quand je clic sur une colonne de type template.
    Citation Envoyé par mehdi_tn
    Juste pour tester si tu transforme le TemplateField en un BoundField sur la colonne Raison Social, est-ce que ça refonctionne ?
    Je viens de faire le test et effectivement ça fonctionne correctement...

    Franchement je ne vois pas trop comment faire,çs fait une journée entière que je suis dessus...

    En tout cas, merci Mehdi de te pencher sur mon sujet c'est vraiment sympa.

    Vincent

  4. #4
    Membre Expert
    Avatar de Mehdi Feki
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    1 113
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 113
    Par défaut
    Essayons un truc simple , remplace ton templatefield par:

    Code aspx : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     <asp:TemplateField HeaderText="Raison Sociale" SortExpression="raison_sociale">
             <ItemTemplate>
    <asp:Label id="RaisonProspectLabel" runat="server" Text='RaisonProspect'></asp:Label> 
              </ItemTemplate>
          </asp:TemplateField>

    Je pense que c'est ton header qui pose problème.

  5. #5
    Membre confirmé
    Inscrit en
    Janvier 2006
    Messages
    65
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 65
    Par défaut
    C'était bien ça!

    Merci beaucoup Medhi,c'est vraiment sympa de ta part.

    Beaucoup de gens compétent sur ce forum

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

Discussions similaires

  1. Tri gridView avec callBack
    Par sunvialley dans le forum ASP.NET
    Réponses: 5
    Dernier message: 03/09/2008, 10h52
  2. Créer d'un GridView avec possibilité de tri
    Par peregna2007 dans le forum ASP.NET
    Réponses: 5
    Dernier message: 16/07/2008, 10h22
  3. Tri d'une liste avec template
    Par Invité dans le forum Langage
    Réponses: 14
    Dernier message: 24/12/2007, 13h28
  4. Réponses: 4
    Dernier message: 14/12/2007, 09h57
  5. [ASP.NET 2.0][C#] Tri sur un GridView avec actions
    Par Wishmaster dans le forum ASP.NET
    Réponses: 3
    Dernier message: 13/09/2007, 14h44

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