problema UltraGrid / Winforms cuadrícula Jerarquía
Pregunta
Necesito para crear una cuadrícula winforms con 3 niveles, utilizando Infragistics UltraGrid.
Nivel 1 tiene 2 columnas (fija)
---> Nivel 2 tiene 3 columnas (fija)
--------> Nivel 3 no tiene infinito de columnas (dinámico basado en el tipo de nivel 2 artículo)
ejemplo
Nivel 1 del artículo 1 -> 3 columnas (fija)
Nivel 1 Artículo 1 -> Nivel 2 del artículo 1 -> 3 columnas (fija)
Nivel 1 Artículo 1 -> Nivel 2 artículo 1 -> Nivel 3 Tema 1 -> 3 columnas (dinámico)
Nivel 1 Artículo 1 -> Nivel 2 Punto 2 -> 3 columnas (fija)
Nivel 1 Artículo 1 -> Nivel 2 artículo 2 -> Nivel 3 del artículo 1 -> 6 Columnas (Dynamic)
¿Cómo se puede lograr esto en la parrilla, en concreto UltraGrid?
Estoy teniendo un enorme dolor de cabeza en este momento
Saludos
Solución
UltraGrid utiliza el concepto de "bandas" para almacenar datos jerárquicos. Su nivel 1 es una banda, el nivel 2 es otro.
Aquí es donde la cosa se complica:. Su nivel 3 es en realidad múltiples bandas dependiendo del número de tipos dinámicos que tienen de Nivel 2 artículos
Si está utilizando un conjunto de datos / DataTable como la fuente de datos, cada DataTable corresponde a una banda, esto es simplemente:
- 1 DataTable para el nivel 1
- 1 DataTable para el Nivel 2 (con una DataRelation de nuevo a DataTable 1)
- N DataTables para el Nivel 3, cada uno con es propias columnas, y teniendo cada una DataRelation volver a DataTable 2
HTH.