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

Flex Discussion :

DataGrid : Tri d'une colonne en CASEINSENSITIVE


Sujet :

Flex

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de ToniConti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2009
    Messages
    245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Novembre 2009
    Messages : 245
    Par défaut DataGrid : Tri d'une colonne en CASEINSENSITIVE
    Bonjour à tous,

    Le souci que je rencontre c'est que pour l'instant le tri des colonnes d'un DataGrid tient compte de la case.
    C'est à dire que le 'D' passe avant le 'c' ce qui n'est pas génial.
    Après plusieurs recherches, il apparait que le truc consisterait à mette la main sur la propriété sort de 'quelque chose' et de lui passer en argument ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    objetQueJeCherche.sort(1);
    qui est l'équivalent de :
    objetQueJeCherche.sort(Array.CASEINSENSITIVE);
    Une méthode simple pour contourner le problème serait d'homogéniser la case dans le DataGrid mais mon application nécessite que l'on laisse la case comme elle est.

    Je m'en remet à vous et vous remercie d'avance pour vos suggestions.

  2. #2
    Membre expérimenté Avatar de samy2525
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    259
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Janvier 2008
    Messages : 259
    Par défaut
    Bonjour,

    Une méthode simple pour contourner le problème serait d'homogéniser la case dans le DataGrid mais mon application nécessite que l'on laisse la case comme elle est.
    j'ai pas tous capté dsl, peux tu nous eclairssir ou quelqu'un d'autre qui a compris le poste biensure

    Merci

    Samy

  3. #3
    Membre éclairé Avatar de ToniConti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2009
    Messages
    245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Novembre 2009
    Messages : 245
    Par défaut
    Bonjour Samy, t'en fait pas pour cette phrase là, c'est juste pour dire qu'il faut vraiment que je trouve comment trier correctement.
    Et que je ne tiens pas à forcer la casse sur mes données pour contourner le problème.

  4. #4
    Membre Expert

    Profil pro
    Inscrit en
    Mai 2006
    Messages
    895
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 895
    Par défaut
    Tu n'as qu'à redéfinir une méthode de tri pour ta colonne : http://livedocs.adobe.com/flex/3/lan...ompareFunction

  5. #5
    Membre éclairé Avatar de ToniConti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2009
    Messages
    245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Novembre 2009
    Messages : 245
    Par défaut
    J'avoue j'ai un peu rechigné pensant que c'était tout un bazar

    Mais finalement quenéni ! merci

    Mon code devient alors :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    public function trier(obj1:Object, obj2:Object):int
    {
    	var x:String = obj1.toString().toUpperCase();
    	var y:String = obj2.toString().toUpperCase();
     
    	if(x==y) return 0;
    	if(x>y) return 1;
    	else return -1;
    }
     
    <mx:DataGridColumn sortCompareFunction="trier" />

  6. #6
    Membre émérite
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    793
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Avril 2009
    Messages : 793
    Par défaut
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    public function trier(obj1:Object, obj2:Object):int
    {
      return obj1.toString().toUpperCase().localCompare(obj2.toString().toUpperCase()) ;
    }

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

Discussions similaires

  1. [Débutant] WPF Tri d'une colonne Date dans un DataGrid
    Par Dan972 dans le forum C#
    Réponses: 1
    Dernier message: 12/02/2015, 04h28
  2. Réponses: 8
    Dernier message: 03/12/2010, 16h08
  3. Réponses: 1
    Dernier message: 15/09/2008, 17h28
  4. Mauvais focus lors du tri d'une colonne sur un datagrid
    Par Scorpi0 dans le forum Windows Forms
    Réponses: 4
    Dernier message: 24/10/2007, 14h18
  5. [C#] [WinForms] Evènement sur le tri d'une colonne
    Par beway dans le forum Windows Forms
    Réponses: 2
    Dernier message: 04/03/2005, 16h43

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