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

Dotnet Discussion :

Tri alphabétique datagridView


Sujet :

Dotnet

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Profil pro
    Développeur informatique
    Inscrit en
    Juin 2002
    Messages
    264
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2002
    Messages : 264
    Par défaut Tri alphabétique datagridView
    Bonjour,

    Je cherche 1 méthode pour pouvoir afficher en fin de liste certains éléments d'une liste triée par ordre alphabétique.
    J'avais l'habitude de mettre en 1er caractère le caractère "~" (126) qui permettait que cet élément soit en fin, mais Windows ne tient pas compte de ce caractère et le nom "~abcd" est classé avant "abcd".
    J'ai essayé tous les caractères de 120 à 255, il n'en tient pas compte.

    Existe t'il un moyen pour changer la méthode de tri afin qu'il tienne compte de tous les caractères ?

    Merci

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Il faut que tu gères le tri manuellement
    Mets le SortMode de la colonne à Programmatic, et gère l'évènement SortCompare du DataGridView pour comparer les valeurs :
    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
    private void dataGridView1_SortCompare(object sender, DataGridViewSortCompareEventArgs e)
    {
        string s1 = e.CellValue1 as string;
        string s2 = e.CellValue2 as string;
        if (s1 != null && s1.StartsWith("~"))
        {
            if (s2 != null && s2.StartsWith("~"))
                e.SortResult = 0;
            else
                e.SortResult = -1;
        }
        else if (s2 != null && s2.StartsWith("~"))
        {
            e.SortResult = 1;
        }
        else
        {
            e.SortResult = StringCompare(s1, s2);
        }
        e.Handled = true;
    }

  3. #3
    Membre très actif
    Profil pro
    Développeur informatique
    Inscrit en
    Juin 2002
    Messages
    264
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2002
    Messages : 264
    Par défaut
    Super, c'est ce que je cherchais...merci pour ton aide.

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

Discussions similaires

  1. Tri alphabétique d'un TreeMap dont les clés sont des String
    Par Djakisback dans le forum Collection et Stream
    Réponses: 6
    Dernier message: 31/03/2006, 14h33
  2. Tri alphabétique sur plusieurs champs
    Par lamoufle dans le forum Requêtes
    Réponses: 8
    Dernier message: 04/12/2005, 04h26
  3. [VC++6][MFC]Tri alphabétique dans CEdit
    Par ben_popcorn dans le forum MFC
    Réponses: 5
    Dernier message: 03/10/2005, 09h39
  4. [JTable] tri alphabétique
    Par clairette dans le forum Composants
    Réponses: 1
    Dernier message: 27/07/2005, 11h09
  5. tri alphabétique dans un tableau deux dimensions
    Par *!!cocco!!* dans le forum Algorithmes et structures de données
    Réponses: 7
    Dernier message: 06/12/2004, 21h38

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