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.

È stato utile?

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:

  1. Creare un elenco temporaneo per memorizzare le colonne
  2. Conservare una copia temporanea del vostro DataGridView
  3. Rimuovi tutte le colonne da DataGridView
  4. Ordina le colonne manualmente, ignorando le prime non si vuole ordinare
  5. 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

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top