Ordinazione di colonne in un DataGridView in ordine alfabetico
-
13-09-2019 - |
Domanda
Sto usando un controllo DataGridView in un'applicazione VB.Net in cui vengono aggiunti dinamicamente colonne a una DataTable, che si sta creando nel codice. Ho bisogno di ordinare alcune delle colonne in ordine alfabetico per nome.
per es.
Nome, cognome, numero civico, B, D, A, C
Ho bisogno di ...
Nome, cognome, numero civico, A, B, C, D
le colonne sono in quanto sono necessari, quindi non posso ordinare loro prima.
Soluzione
Non è VB.NET, ma questa domanda in C # dovrebbe avere la risposta che cercavi: Come posso ordinare le intestazioni delle colonne in un DataGrid in ordine alfabetico
DisplayIndex
è la chiave.
Se non si vuole fare LINQ, allora è possibile implementare il codice per effettuare le seguenti operazioni:
- Creare un elenco temporaneo per memorizzare le colonne
- Conservare una copia temporanea del vostro DataGridView
- Rimuovi tutte le colonne da DataGridView
- Ordina le colonne manualmente, ignorando le prime non si vuole ordinare
- Aggiungi colonne di nuovo al DataGridView nell'ordine corretto utilizzando DisplayIndex.
C'è anche una domanda qui a discutere su come ordinare colonne DataGrid o di un indice