C # er et programmeringsspråk som brukes av Microsoft til å lage dataprogrammer. Det listevisningen i C # program lar deg vise kolonnene i programmering , slik at du kan redigere noen bugs. Den IComparer grensesnittet er den vanligste program kompilator brukes på Microsoft Windows -operativsystemet . Du kan bruke dette til å implementere kolonnene i programmet via listevisningen funksjonen. Du trenger ikke å være dataekspert for å implementere dette inn i programmet . Du kan gjøre det selv . Du trenger
C # program
Vis flere instruksjoner
en
Åpne din C # program og deretter opprette et nytt prosjekt fra " New "-ikonet på toppen av program . Legg til ListView kontroll fra menyen øverst i programmet og deretter størrelsen på prosjektet , slik at du har nok plass for teksten
2
Lim inn denne koden på "Class" -alternativet i skjemaet. :
privat ListViewColumnSorter lvwColumnSorter ;
3
Lim denne koden inn i " Constructor " delen av skjemaet etter " InitializeComponent "-ledeteksten vises : en
//Opprett en forekomst av en ListView kolonne sorter og tilordne den
//til ListView kontroll. lvwColumnSorter = new ListViewColumnSorter (); this.listView1.ListViewItemSorter = lvwColumnSorter ;
4
Lim denne koden inn i " Load "-alternativet i form : en
ColumnHeader columnheader ; //Brukt . for å skape kolonneoverskriftene
ListViewItem listviewitem ; . . //Brukes for å lage listview elementer
//Pass på at visningen er satt til å vise detaljer
listView1.View = View.Details ;
//Lag noen listview elementer som består av fornavn og etternavn . listviewitem = new ListViewItem ( " John" ); 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 ) ;
< p> //Lag noen kolonneoverskriftene for dataene. columnheader = new ColumnHeader (); columnheader.Text = " fornavn "; this.listView1.Columns.Add ( columnheader ) ;
columnheader = ny ColumnHeader ();
columnheader.Text = " etternavn "; this.listView1.Columns.Add ( columnheader ) ;
//Loop gjennom og størrelse hver kolonneoverskrift for å passe kolonneoverskriften teksten . foreach ( ColumnHeader ch i this.listView1.Columns )
{
ch.Width = -2 ;
}
5
Lim dette koden inn i " ColumnClick " alternativet på listevisningen kontroll : en
ColumnHeader columnheader ; //Brukes til å opprette kolonneoverskrifter
ListViewItem listviewitem ; //Brukes for å lage listview elementer
< . . . p > //Pass på at visningen er satt til å vise detaljer
listView1.View = View.Details ;
//Lag noen listview elementer som består av fornavn og etternavn . listviewitem = new ListViewItem ( " John" ); 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 ) ;
< p> //Lag noen kolonneoverskriftene for dataene. columnheader = new ColumnHeader (); columnheader.Text = " fornavn "; this.listView1.Columns.Add ( columnheader ) ;
columnheader = ny ColumnHeader ();
columnheader.Text = " etternavn "; this.listView1.Columns.Add ( columnheader ) ;
//Loop gjennom og størrelse hver kolonneoverskrift for å passe kolonneoverskriften teksten . foreach ( ColumnHeader ch i this.listView1.Columns )
{
ch.Width = -2 ;
}
6
Klikk på " Add Class " på prosjekt -menyen, og deretter lime inn denne koden standardvalget : en
hjelp System.Collections ;
hjelp system.windows.forms ;
///
///Denne klassen er en implementering av " IComparer ' grensesnitt .
///< /oppsummering >
public class ListViewColumnSorter : IComparer
{
///
///Angir kolonnen skal sorteres
///< /oppsummering > ;
private int ColumnToSort ; .
///
///Angir rekkefølgen for å sortere (dvs. ' Stigende ')
///< /oppsummering >
privat sortering OrderOfSort ;
///
///Case- insensitive comparer objekt
///< /oppsummering >
privat CaseInsensitiveComparer ObjectCompare ;
///
///klasse konstruktør . Initialiserer ulike elementene
///< /oppsummering >
offentlig ListViewColumnSorter ( )
{
//Initialiser kolonnen til '0 '
ColumnToSort = 0;
//Initialiser sorteringsrekkefølge til "none"
OrderOfSort = SortOrder.None ;
//Initialiser CaseInsensitiveComparer objektet
ObjectCompare = new CaseInsensitiveComparer ();
}
///
///Denne metoden er arvet fra IComparer grensesnitt. Den sammenligner de to objektene gått med en sak insensitive sammenligning.
///< /Oppsummering >
/// første objektet som skal sammenlignes < ;/param >
/// Second objekt å bli sammenlignet < /param >
/// resultatet av sammenligningen . " 0 " hvis lik , negativ hvis ' x' er mindre enn ' y' og positiv hvis ' x' er større enn ' y' < /returnerer >
public int Sammenlign ( objekt x , objekt y )
{
int compareResult ;
ListViewItem listviewX , listviewY ;
//Kast objektene å bli sammenlignet med ListViewItem gjenstander
listviewX = ( ListViewItem ) x ;
listviewY = ( ListViewItem ) y ;
//sammenligne de to elementene
compareResult = Beregn riktig returverdi basert på objekt sammenligning
if ( OrderOfSort == SortOrder.Ascending )
{
//stigende rekkefølge Sorter er valgt, returnerer normalt resultat av sammenligne driften
retur compareResult ;
}
else if ( OrderOfSort == SortOrder.Descending )
{
//synkende sortering er valgt , returnere negativt resultat av sammenligne driften
retur ( - compareResult ) ;
}
annet
{
//Return ' 0 "for å indikere at de er like
return 0 ;
}
}
///
///får eller setter nummeret på kolonnen til å bruke sortering drift ( standard er '0 ' ) .
///< /oppsummering >
public int SortColumn
{
sett
{
ColumnToSort = verdi ;
}
få
{
retur ColumnToSort ;
}
}
///
///får eller setter den rekkefølgen av sortering å gjelde (for eksempel ' Stigende ' eller ' synkende ') .
///< /oppsummering >
offentlig sortering ordre på
{
satt
{
OrderOfSort = verdi ;
}
få
{
retur OrderOfSort ;
}
}
}
7
Lagre bygge fra menyen øverst og deretter kjøre programmet. Klikk på kolonneoverskriftene i listevisningen kontroll for å åpne kolonnene .