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 :

Désactiver le tri d'un Gridview en passant par un DataSource


Sujet :

ASP.NET

  1. #1
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2015
    Messages : 34
    Points : 21
    Points
    21
    Par défaut Désactiver le tri d'un Gridview en passant par un DataSource
    Bonjour à tous!!

    Alors j'ai un mini problème qui je pense est simple à régler mais qui me prend la tête depuis hier. En fait, j'ai un Gridview qui se charge avec DataSourceID quand ma page démarre. Mais lors d'un clique sur un bouton, mon DataSourceID vaut null et je le remplace par un DataSource (en code C#).
    Bref, jusque là tout va bien.

    Le seul hic, c'est que, avant le clique du bouton, le tri est activé, et quand l'utilisateur clique sur une des entêtes du tableau pour trier et qu'ensuite il clique sur ce fameux bouton, j'ai une erreur: "La source de données ne prend pas en charge le tri".
    J'ai bien tenté de rajouté, dans mon code C# dans la méthode du clique du bouton, un:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Gridview.AllowSorting = false;
    Mais rien n'y fait, une fois le tri fait dans mon tableau, impossible d'effectuer ma requête du clique sur le bouton. Par contre, si l'utilisateur n'effectue pas de tri, y'a aucun soucis. J'aimerai juste pouvoir désactiver le tri une fois le clique effectué...

    Quelqu'un aurait il une idée de comment désactiver le tri dans un Gridview?

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    777
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2003
    Messages : 777
    Points : 1 077
    Points
    1 077
    Par défaut
    Tu as un event onsort ou un truc du genre, tu l'implémente sans rien coder dedans et ca devrait fonctionner...

  3. #3
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2015
    Messages : 34
    Points : 21
    Points
    21
    Par défaut
    Alors j'ai tenté:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Gridview_Sorted(object sender, EventArgs e)
    {
    }
    qui se déclenche lorsqu'une colonne est triée dans le gridview, une fois le tri terminé.

    et


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Gridview_Sorting(object sender, EventArgs e)
    {
    }
    qui se déclenche lorsqu'une colonne est triée dans le gridview, avant l'intervention du tri.

    Le truc c'est qu'une fois que je les/l' appelle, que faut-il que je mette à la place de "sender" et "e"? Car je n'en ai aucune idée...

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    777
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2003
    Messages : 777
    Points : 1 077
    Points
    1 077
    Par défaut
    ??? comment ca "quand tu les appels" ?

    c'est le gridview qui déclenche l'event et qui passe les arguments...

  5. #5
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2015
    Messages : 34
    Points : 21
    Points
    21
    Par défaut
    J'aimerai que le tri soit activé jusqu'au clique du bouton... Du coup, je pensais qu'il fallait les appeler. Mais même sans els appeler et en écrivant les ùéthodes vides, cela me fait la même erreur, mon tri n'est pas désactivé.

  6. #6
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2015
    Messages : 34
    Points : 21
    Points
    21
    Par défaut
    Je viens de tenté ces bouts de code séparément, dans ma méthode du clique du bouton:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Gridview.Sort(" ", SortDirection.Ascending);
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    foreach (ButtonField column in Gridview.Columns)
                            {
                                column.SortExpression = String.Empty;
                            }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    foreach (ButtonField column in Gridview.Columns)
                            {
                                column.SortExpression = " ";
                            }
    Mais rien n'y fait, toujours la même erreur...

  7. #7
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2015
    Messages : 34
    Points : 21
    Points
    21
    Par défaut
    J'ai finalement remplacé le champs vide par null et cela fonctionne !!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Gridview.Sort(null, SortDirection.Ascending);
    Merci pour ton aide Dokho1000 !

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

Discussions similaires

  1. [Débutant] Recuperer ligne d'un gridview en passant par le clic d'un RowDataBound
    Par Netpasnet dans le forum ASP.NET
    Réponses: 10
    Dernier message: 16/06/2011, 13h22
  2. Tri d'un GridView
    Par Nalfeim dans le forum Windows Presentation Foundation
    Réponses: 19
    Dernier message: 16/04/2009, 11h20
  3. [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
  4. Désactiver un enregistrement dans un GridView.
    Par Paulo2901 dans le forum ASP.NET
    Réponses: 7
    Dernier message: 27/08/2007, 12h02
  5. [VB.NET] Problème de tri sur Datagrid/gridview multilingue
    Par crimsonPhantom dans le forum ASP.NET
    Réponses: 4
    Dernier message: 16/03/2006, 22h41

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