qui si va
<DataGrid ItemsSource="{Binding Students}"
AutoGenerateColumns="False"
CanUserAddRows="False">
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding Name}"
Header="Name" />
<DataGridTextColumn Binding="{Binding Marks[0]}"
Header="Mark1" />
<DataGridTextColumn Binding="{Binding Marks[1]}"
Header="Mark2" />
<DataGridTextColumn Binding="{Binding Marks[2]}"
Header="Mark3" />
</DataGrid.Columns>
</DataGrid>
cambiano anche di classe come
class Student
{
public String Name { get; set; }
public List<String> Marks { get; set; }
}
nota che ho fatto le proprietà pubbliche per le variabili
risultato

colonne variabili
è possibile avere un numero variabile di colonne, ma non per ogni riga
colonne method1 codificare massimi xaml, quindi se una colonna non ha un valore per quella riga rimarrà vuoto
ad es.

Ho aggiunto un'altra colonna di dimostrare chiaramente
<DataGridTextColumn Binding="{Binding Marks[3]}"
Header="Mark4" />
altro approccio coinvolgono generare colonne in fase di esecuzione tramite codice dietro o tramite ausilio di proprietà associate
Quali marchi dello studente vuoi mostrare? La mia domanda vuoi legare il voto dello studente selezionato? – Sivasubramanian
Ho 5 studenti nell'oggetto Elenco e ciascuno con 5 segni di soggetto. –
Vuoi mostrare tutti gli studenti e questi nomi allo stesso tempo o il voto di uno studente in base a qualsiasi selezione ??? – Sivasubramanian