Estoy tratando de agregar datos a una cuadrícula de datos (de hecho, cualquier control que presente datos en una cuadrícula), pero las columnas (nombres y números)) no se conocen hasta el tiempo de ejecución.Agregar filas a una cuadrícula de datos WPF donde las columnas no se conocen hasta el tiempo de ejecución
Las columnas que sí sé cómo crear: por ejemplo
DataGridTextColumn textColumn = new DataGridTextColumn();
textColumn.Header = column.DisplayName;
MyDataGrid.Columns.Add(textColumn);
Pero ¿cómo puedo añadir filas? No veo cómo puedo usar el enlace porque mis datos no están contenidos en un objeto con propiedades conocidas. Por ejemplo, los datos de cada fila pueden venir como una cadena []. Así que una vez podría tener tres columnas, otra vez podría tener cinco.
que estaba esperando do ser capaz de hacer algo como esto:
// Example data to represent a single row.
string[] row1 = new[] { "value1", "value2", "value3" };
var row = new Row;
row.AddCell(row1[0]);
row.AddCell(row1[1]);
row.AddCell(row1[2]);
MyDataGrid.Rows.Add(row);
El enlace funciona con índices: puede crear una columna cuya expresión de enlace apunte a un índice de la fuente de datos si lo desea. También podría usar un diccionario para cada fila y usar una cadena como la clave, entonces su enlace podría usar el nombre de la columna en el diccionario para obtener el valor en lugar de un índice numérico – Charleh