Come visualizzare un elenco di liste in DataGrid (WPF) usando c #

Ho un elenco di intestazioni (colonne) e quindi righe di dati e voglio mostrarlo in DataGrid con collegamenti bidirezionali

List headers = new List {“FirstName”, “LastName”, “Age”};

Lista row1 = new List {“John”, “Doe”, “19”};

Lista row2 = new List {“Jane”, “Doe”, “21”};

List row3 = new List {“Suzie”, “Q”, “52”};

Lista row4 = new List {“No”, “Body”, “48”};

Elenco> tableValues ​​= new List> {row1, row2, row3, row4};

L’editor non mi consente di mostrare Elenco di elenchi poiché ha più <

Apprezzo qualsiasi aiuto.

dato che il numero di intestazioni può variare, suggerisco di trasformare i dati nel formato conveniente per l’associazione dei dati bidirezionale e utilizzare DataTable:

var dt = new DataTable(); // create columns and headers int columnCount = headers.Count; for (int i = 0; i < columnCount; i++) dt.Columns.Add(headers[i]); // copy rows data for (int i = 0; i < tableValues.Count; i++) dt.Rows.Add(tableValues[i].Take(columnCount).ToArray()); // display in a DataGrid dataGrid.ItemsSource = dt.DefaultView; 

In primo luogo, crea una class per conservare le informazioni sulla tua persona, perché il modo in cui stai inizializzando i tuoi elenchi non è buono.

 Public class Person { public string Firstname {get; set;} public string Surname {get; set;} public int Age {get; set;} } 

Quindi puoi creare più persone e memorizzarle in un elenco di tipo Persona … es

 //other code List People = new List(); People.Add(new Person() { Firstname = "John", Surname = "Doe", Age = 19 }); //etc 

Quindi in XAML tutto ciò che devi fare è puntare la griglia Dati nell’elenco Persone e dovrebbe essere in grado di legarsi alle varie proprietà su ogni persona o generare automaticamente colonne.

          

XAML non testato, ma dovrebbe darti un punto di partenza

Ci sono molte guide online che saranno in grado di aiutarti con questo invece di scrivere la tua domanda su Stack Overflow.