problema Ultragrid / Winforms Grade Hierarquia
Pergunta
Eu preciso criar uma grade winforms com 3 níveis, usando infragistics ultragrid.
Nível 1 tem 2 colunas (fixo)
---> Nível 2 tem 3 colunas (fixo)
--------> Nível 3 tem Infinito nenhuma das colunas (Dynamic com base no tipo de item de nível 2)
exemplo
Nível 1 Item 1 -> 3 colunas (Fixo)
Nível 1 Item 1 -> Nível 2 artigo 1 -> 3 colunas (Fixo)
Nível 1 Item 1 -> Nível 2 artigo 1 -> Nível 3 Item 1 -> 3 colunas (dinâmico)
Nível 1 Item 1 -> Nível 2 Item 2 -> 3 colunas (Fixo)
Nível 1 Item 1 -> Nível 2 artigo 2 -> Nível 3 Item 1 -> 6 colunas (dinâmico)
Como isso pode ser alcançado no grid, especificamente Ultragrid?
Eu estou tendo uma enorme dor de cabeça agora
Felicidades
Solução
UltraGrid usa o conceito de "Bandas" para armazenar dados hierárquico. Seu nível 1 é uma banda, o Nível 2 é outra.
Aqui é onde fica complicado:. O Nível 3 é na verdade várias bandas, dependendo de quantas dinâmica tipos que você tem de Nível 2 itens
Se você estiver usando um DataSet / DataTable como fonte de dados, cada um corresponde DataTable para uma banda, isso é simplesmente:
- 1 DataTable para o nível 1
- 1 DataTable para o Nível 2 (com um DataRelation volta para DataTable 1)
- N DataTables para o nível 3, cada um com É próprias colunas, e cada um com um DataRelation volta para DataTable 2
HTH.