Domanda

Ho un datagrid WinForms .NET la cui fonte di dati è un List<cLineItem> chiamato linee. cLineItem è molto semplice classe con immobili come unità (int), descrizione (stringa) e quantità di unità (float).

Nel codice, io popolo l'elenco delle linee e quindi impostare l'origine dati:

dataGridView1.DataSource = lines;

Questa popola correttamente la griglia, tuttavia, anche se ciascuna delle colonne della griglia sono impostate ordinabile, quando si sceglie una colonna, doesnt ordinare le righe.

È stato utile?

Soluzione

non lo fa lavoro di default , a meno che la vostra fonte esplicitamente supporta l'ordinamento. È necessario per avvolgere la vostra fonte di dati in un SortableBindingList . È possibile utilizzare i file PropertyComparer.cs e SortableBindingList.cs da questo file zip e usarlo in questo modo:

dataGridView1.DataSource = new SortableBindingList<cLineItem>(lines);
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top