示例#1
0
        private void listViewResultats_ColumnClick(object sender, ColumnClickEventArgs e)
        {
            try
            {
                listViewResultats.BeginUpdate();
                switch (e.Column)
                {
                case 0:
                    LesRapports.Sort(new TriRapports(CompareNom, ordreNom));
                    if (ordreNom == TriOrdre.ASC)
                    {
                        ordreNom = TriOrdre.DESC;
                    }
                    else
                    {
                        ordreNom = TriOrdre.ASC;
                    }
                    listViewResultats.VirtualListSize = LesRapports.Count;
                    break;

                case 1:
                    LesRapports.Sort(new TriRapports(CompareCoordonnees, ordreCoordonnees));
                    if (ordreCoordonnees == TriOrdre.ASC)
                    {
                        ordreCoordonnees = TriOrdre.DESC;
                    }
                    else
                    {
                        ordreCoordonnees = TriOrdre.ASC;
                    }
                    listViewResultats.VirtualListSize = LesRapports.Count;
                    break;

                case 2:
                    LesRapports.Sort(new TriRapports(CompareMetal, ordreMetal));
                    if (ordreMetal == TriOrdre.ASC)
                    {
                        ordreMetal = TriOrdre.DESC;
                    }
                    else
                    {
                        ordreMetal = TriOrdre.ASC;
                    }
                    listViewResultats.VirtualListSize = LesRapports.Count;
                    break;

                case 3:
                    LesRapports.Sort(new TriRapports(CompareCristal, ordreCristal));
                    if (ordreCristal == TriOrdre.ASC)
                    {
                        ordreCristal = TriOrdre.DESC;
                    }
                    else
                    {
                        ordreCristal = TriOrdre.ASC;
                    }
                    listViewResultats.VirtualListSize = LesRapports.Count;
                    break;

                case 4:
                    LesRapports.Sort(new TriRapports(CompareDeuterium, ordreDeut));
                    if (ordreDeut == TriOrdre.ASC)
                    {
                        ordreDeut = TriOrdre.DESC;
                    }
                    else
                    {
                        ordreDeut = TriOrdre.ASC;
                    }
                    listViewResultats.VirtualListSize = LesRapports.Count;
                    break;

                case 5:
                    LesRapports.Sort(new TriRapports(CompareRessources, ordreTotalGT));
                    if (ordreTotalGT == TriOrdre.ASC)
                    {
                        ordreTotalGT = TriOrdre.DESC;
                    }
                    else
                    {
                        ordreTotalGT = TriOrdre.ASC;
                    }
                    listViewResultats.VirtualListSize = LesRapports.Count;
                    break;

                case 6:
                    LesRapports.Sort(new TriRapports(CompareRessources, ordreTotalPT));
                    if (ordreTotalPT == TriOrdre.ASC)
                    {
                        ordreTotalPT = TriOrdre.DESC;
                    }
                    else
                    {
                        ordreTotalPT = TriOrdre.ASC;
                    }
                    listViewResultats.VirtualListSize = LesRapports.Count;
                    break;

                case 7:
                    LesRapports.Sort(new TriRapports(CompareRuinesPotentielles, ordreRuinesPotentielles));
                    if (ordreRuinesPotentielles == TriOrdre.ASC)
                    {
                        ordreRuinesPotentielles = TriOrdre.DESC;
                    }
                    else
                    {
                        ordreRuinesPotentielles = TriOrdre.ASC;
                    }
                    listViewResultats.VirtualListSize = LesRapports.Count;
                    break;

                case 8:
                    LesRapports.Sort(new TriRapports(CompareDefenses, ordreDefenses));
                    if (ordreDefenses == TriOrdre.ASC)
                    {
                        ordreDefenses = TriOrdre.DESC;
                    }
                    else
                    {
                        ordreDefenses = TriOrdre.ASC;
                    }
                    listViewResultats.VirtualListSize = LesRapports.Count;
                    break;
                }
            }
            finally
            {
                listViewResultats.EndUpdate();
            }
        }
示例#2
0
 public TriRapports(Comparateur comp, TriOrdre ordre)
 {
     this.c     = comp;
     this.ordre = ordre;
 }