C # is een programmeertaal die wordt gebruikt door Microsoft om computer applicaties te creëren . De lijstweergave in je C # programma kunt u de kolommen in uw programmering te bekijken , zodat u fouten kunt bewerken . De IComparer interface is de meest voorkomende programma compiler gebruikt op het Microsoft Windows-besturingssysteem . U kunt dit gebruiken om de kolommen in uw programma uit te voeren via de functie lijstweergave . Je hoeft niet op een computer expert te zijn om dit te implementeren in uw programma. U kunt het zelf doen . Wat je nodig hebt C # programma Toon Meer Aanwijzingen 1 Open uw C # -programma en maak vervolgens een nieuw project van de " New " icoon aan de bovenkant van de programma . Voeg de ListView uit het menu aan de bovenkant van het programma en vervolgens de grootte van het project, zodat u genoeg ruimte voor de tekst Plak deze code 2 in je " Class " -optie van het formulier . : prive ListViewColumnSorter lvwColumnSorter ; 3 Plak deze code in de " Bouwer " deel van het formulier na de " InitializeComponent " prompt verschijnt : //Maak een instantie van een ListView kolomsorteerder en toewijzen //aan de ListView . lvwColumnSorter = new ListViewColumnSorter ( ) ; this.listView1.ListViewItemSorter = lvwColumnSorter ; 4 Plak deze code in de optie "Load " in de vorm : kolomnaam kolomnaam ; //Gebruikt . voor het creëren kolomkoppen ListViewItem ListViewItem ; . . //Gebruikt voor het maken van listview items //Zorg ervoor dat de weergave is ingesteld op gegevens tonen listView1.View = View.Details ; //Maak een aantal lijstweergave artikelen bestaande uit voor-en achternamen . ListViewItem = new ListViewItem ( "Jan" ) ; listviewitem.SubItems.Add ( " Smith " ) ; this.listView1.Items.Add ( ListViewItem ) ; ListViewItem = new ListViewItem ( " Bob " ) ; ListViewItem . SubItems.Add ( " Taylor " ) ; this.listView1.Items.Add ( ListViewItem ) ; ListViewItem = new ListViewItem ( " Kim " ) ; listviewitem.SubItems.Add ( " Zimmerman " ) ; this.listView1 . Items.Add ( ListViewItem ) ; ListViewItem = new ListViewItem ( " Olivia " ) ; listviewitem.SubItems.Add ( " Johnson " ) ; this.listView1.Items.Add ( ListViewItem ) ; //Maak een aantal kolomkoppen voor de data . kolomnaam = new kolomnaam ( ) ; columnheader.Text = " Voornaam" ; this.listView1.Columns.Add ( kolomnaam ) ; kolomnaam = new kolomnaam ( ) ; columnheader.Text = " Last Name " ; this.listView1.Columns.Add ( kolomnaam ) ; //Loop door en omvang elke kolomkop om de kolom header tekst past . foreach ( kolomnaam ch in this.listView1.Columns ) op Twitter { ch.Width = -2 ; } 5 Plak deze code in het " ColumnClick " optie op de lijstweergave controle : kolomnaam kolomnaam ; //Gebruikt voor het maken van kolomkoppen ListViewItem ListViewItem ; //Gebruikt voor het maken van listview items < . . . p > //Zorg ervoor dat de weergave is ingesteld op gegevens tonen listView1.View = View.Details ; //Maak een aantal lijstweergave artikelen bestaande uit voor-en achternamen . ListViewItem = new ListViewItem ( "Jan" ) ; listviewitem.SubItems.Add ( " Smith " ) ; this.listView1.Items.Add ( ListViewItem ) ; ListViewItem = new ListViewItem ( " Bob " ) ; ListViewItem . SubItems.Add ( " Taylor " ) ; this.listView1.Items.Add ( ListViewItem ) ; ListViewItem = new ListViewItem ( " Kim " ) ; listviewitem.SubItems.Add ( " Zimmerman " ) ; this.listView1 . Items.Add ( ListViewItem ) ; ListViewItem = new ListViewItem ( " Olivia " ) ; listviewitem.SubItems.Add ( " Johnson " ) ; this.listView1.Items.Add ( ListViewItem ) ; //Maak een aantal kolomkoppen voor de data . kolomnaam = new kolomnaam ( ) ; columnheader.Text = " Voornaam" ; this.listView1.Columns.Add ( kolomnaam ) ; kolomnaam = new kolomnaam ( ) ; columnheader.Text = " Last Name " ; this.listView1.Columns.Add ( kolomnaam ) ; //Loop door en omvang elke kolomkop om de kolom header tekst past . foreach ( kolomnaam ch in this.listView1.Columns ) op Twitter { ch.Width = -2 ; } 6 Klik op de optie " klasse toevoegen " in het menu project en dan deze code plakken in de standaard optie : gebruik System.Collections ; gebruik System.Windows.Forms ; /// ///Deze klasse is een implementatie van de ' IComparer ' interface. ///< /summary > openbare klasse ListViewColumnSorter : IComparer { /// ///Geeft de kolom te sorteren ///< /summary > ; private int ColumnToSort ; . /// ///Geeft de volgorde aan waarin te sorteren ( dwz ' Oplopend ' ) op Twitter ///< /summary > prive SortOrder OrderOfSort ; /// ///Case ongevoelig vergelijker object ///< /summary > prive CaseInsensitiveComparer ObjectCompare ; /// ///klasse constructeur . Initialiseert elementen verschillende ///< /summary > openbare ListViewColumnSorter ( ) op { //Initialiseer de kolom op '0 ' < br > ColumnToSort = 0 ; //Initialiseer de sorteervolgorde op 'none ' OrderOfSort = SortOrder.None ; //Initialiseer de CaseInsensitiveComparer object < br > ObjectCompare = new CaseInsensitiveComparer ( ) ; } /// ///Deze methode is overgenomen van de IComparer interface. Het vergelijkt de twee objecten doorgegeven met behulp van een hoofdlettergevoelig vergelijking . ///< /Summary > /// Eerste object te vergelijken < ;/param > /// tweede object te vergelijken < /param > /// het resultaat van de vergelijking . " 0 " als gelijke , negatief als ' x ' is kleiner dan ' y' en positief als ' x ' is groter dan ' y' < /returns > public int vergelijken ( object x , object y ) { int compareResult ; ListViewItem listviewX , listviewY ; //Cast de objecten die moeten worden vergeleken met ListViewItem objecten listviewX = ( ListViewItem ) x ; listviewY = ( ListViewItem ) y ; //Vergelijk de twee items compareResult = Bereken correcte return waarde gebaseerd op objectvergelijking if ( OrderOfSort == SortOrder.Ascending ) op Twitter { //oplopend sorteren geselecteerd , terug normaal gevolg van vergelijken operatie < br > terugkeer compareResult ; } else if ( OrderOfSort == SortOrder.Descending ) op Twitter { //aflopend sorteren geselecteerd , terug negatief resultaat van vergelijken operatie return ( - compareResult ) ; } anders { //Return ' 0 ' om aan te geven dat ze gelijk zijn return 0 ; } } /// Twitter ///opgehaald of stelt het nummer van de kolom waarop de sortering bewerking toepassen ( Defaults op '0 ' ) . ///< /summary > public int SortColumn < br > { set { ColumnToSort = waarde ; } krijgen { terugkeer ColumnToSort ; } } /// ///opgehaald of bepaalt de volgorde van het sorteren te passen ( bijvoorbeeld ' Oplopend ' of ' Aflopend ' ) . ///< /summary > openbare SortOrder Bestel Online { set { OrderOfSort = waarde ; } krijgen { terugkeer OrderOfSort ; } } } 7 Sla het bouwen in het menu aan de bovenkant en dan start het programma . Klik op de kolomkoppen in de lijstweergave controle om de kolommen te openen .
|