No se puede unir una matriz a DataGrid
. Sin embargo, dependiendo de lo que intente lograr, puede transformarlo en una matriz de class
.
¿Cuál es el contenido de su matriz? ¿Por qué no intentas algo como esto?
public class MyClass
{
public string A { get; set; }
public string B { get; set; }
public MyClass(string a, string b)
{
Debug.Assert(a != null);
Debug.Assert(b != null);
this.A = a;
this.B = b;
}
}
Entonces instanciar algo de la siguiente manera:
MyClass[] source = { new MyClass("A", "B"), new MyClass("C", "D") };
this.dataGrid.ItemsSource = source;
Alternativamente, si no se puede modificar el tipo de fuente, tratan de utilizar LINQ para proyectarla:
var source = (from i in Enumerable.Range(0, matrix.GetLength(0))
select new MyClass(matrix[i, 0], matrix[i, 1])).ToList();
this.dataGrid1.ItemsSource = source;
@Gracias Meleak, he estado leyendo eso pero estaba interesado en completar ** Cuadrícula de datos ** con una matriz 2D, no una cuadrícula de componentes. –
@Jaime Oro: actualicé mi respuesta. Tuve el mismo requisito en un proyecto anterior y creé un 'DataGrid' subclasificado que puedes probar –
¡Funciona a la perfección! Gracias Genious! –