C # è un linguaggio di programmazione utilizzato da Microsoft per creare applicazioni informatiche . La listview nel vostro programma C # consente di visualizzare le colonne nella programmazione in modo da poter modificare eventuali bug . L'interfaccia IComparer è il compilatore programma più utilizzato sul sistema operativo Microsoft Windows . È possibile utilizzare questo per implementare le colonne del programma tramite la funzione ListView. Non devi essere un esperto di computer per implementare questo nel vostro programma . È possibile farlo da soli . Cose che ti serviranno
C # programma
Show More Istruzioni
1
Aprire il programma C # e quindi creare un nuovo progetto con l'icona "Nuovo " nella parte superiore della programma . Aggiungere il controllo ListView dal menu nella parte superiore del programma e poi formato il progetto in modo da avere abbastanza spazio per il testo
2
incollare questo codice l'opzione "Classe" della forma in . :
privato ListViewColumnSorter lvwColumnSorter ;
3
incollare questo codice nel " Costruttore " parte del modulo dopo la visualizzazione del messaggio " InitializeComponent " :
//Crea un'istanza di un sorter colonna ListView e assegnarlo
//per il controllo ListView . lvwColumnSorter = new ListViewColumnSorter ( ) ; this.listView1.ListViewItemSorter = lvwColumnSorter ;
4
incollare questo codice nella opzione "Carica" nella forma :
ColumnHeader ColumnHeader ; //Usato . per la creazione di intestazioni di colonna
ListViewItem ListViewItem , . . //Usato per la creazione di elementi ListView
//Assicurarsi che la vista è impostato per visualizzare i dettagli
listView1.View = View.Details ;
//Crea alcuni elementi ListView , comprensivi di nomi e cognomi . ListViewItem = new ListViewItem ( " Mario") ; 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 > //Crea alcune intestazioni di colonna per i dati. ColumnHeader = new ColumnHeader (); columnheader.Text = "Nome" ; this.listView1.Columns.Add ( ColumnHeader ) ;
ColumnHeader = new ColumnHeader ( ) ;
columnheader.Text = "Cognome" ; this.listView1.Columns.Add ( ColumnHeader ) ;
//loop attraverso e dimensioni di ogni colonna per adattare il testo dell'intestazione della colonna . foreach ( ColumnHeader ch in this.listView1.Columns ) per
{
ch.Width = -2 ;
}
5
Incolla questo codice nella opzione " ColumnClick " sul controllo ListView :
ColumnHeader ColumnHeader ; //Usato per la creazione di intestazioni di colonna
ListViewItem ListViewItem ; //Usato per la creazione di elementi ListView
< . . . p > //Assicurarsi che la vista è impostato per visualizzare i dettagli
listView1.View = View.Details ;
//Creazione di alcuni elementi ListView , comprensivi di nomi e cognomi . ListViewItem = new ListViewItem ( " Mario") ; 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 > //Crea alcune intestazioni di colonna per i dati. ColumnHeader = new ColumnHeader (); columnheader.Text = "Nome" ; this.listView1.Columns.Add ( ColumnHeader ) ;
ColumnHeader = new ColumnHeader ( ) ;
columnheader.Text = "Cognome" ; this.listView1.Columns.Add ( ColumnHeader ) ;
//loop attraverso e dimensioni di ogni colonna per adattare il testo dell'intestazione della colonna . foreach ( ColumnHeader ch in this.listView1.Columns ) per
{
ch.Width = -2 ;
}
6
Clicca il opzione " Class Aggiungi " dal menu progetto e quindi incollare questo codice nel l'opzione di default :
utilizzando System.Collections ;
using System.Windows.Forms ;
///
///Questa classe è una implementazione di interfaccia ' IComparer ' .
///< /summary > public class
ListViewColumnSorter : IComparer
{
///
///Specifica la colonna da ordinare
///< /summary > ;
private int ColumnToSort ; .
///
///Specifica l'ordine in cui ordinare (cioè ' Crescente ' ) per
///< /summary >
privato SortOrder OrderOfSort ;
///
///case insensitive confronto oggetto
///< /summary >
privato CaseInsensitiveComparer ObjectCompare ;
///
///costruttore della classe . Inizializza vari elementi
///< /summary >
ListViewColumnSorter pubblico ( ) per
{
//Inizializza la colonna a '0 '
ColumnToSort = 0;
//Inizializza l'ordine di 'none'
OrderOfSort = SortOrder.None ;
//Inizializza l'oggetto CaseInsensitiveComparer
ObjectCompare = new CaseInsensitiveComparer ( ) ; }
///
///Questo metodo viene ereditato dall'interfaccia IComparer . Esso mette a confronto i due oggetti passati usando una custodia confronto insensibile .
///< /Summary>
/// Primo oggetto da confrontare < param ;/>
/// secondo oggetto da confrontare < /param >
/// il risultato del confronto . "0" se uguali , negativo se ' x' è minore di ' y' e positivo se ' x' è maggiore di ' y ' < /returns >
public int Compare ( oggetto x , oggetto y)
{
int compareResult ;
ListViewItem listviewX , listviewY ;
//Fusioni gli oggetti da confrontare con ListViewItem oggetti
listviewX = ( ListViewItem ) x ;
listviewY = ( ListViewItem ) y ;
//confrontare le due voci
compareResult = Calcola il corretto valore di ritorno sulla base di confronto oggetto
se ( OrderOfSort == SortOrder.Ascending ) per
{
//è selezionata sorta Crescente , tornare normale risultato di confrontare il funzionamento
ritorno compareResult ;
}
else if ( OrderOfSort == SortOrder.Descending ) per
{
//è selezionata discendente Ordina , tornare risultato negativo di confrontare il funzionamento
ritorno ( - compareResult ) ;
}
altro
{
//Return ' 0 ' per indicare che sono uguali
return 0; }
}
///
///Ottiene o imposta il numero della colonna a cui applicare l'operazione di ordinamento ( il default è '0 ') .
///< /summary >
public int SortColumn < br >
{
set