Задача Ultragrid / Winforms Grid Hierarchy - PullRequest
0 голосов
/ 04 июня 2009

Мне нужно создать сетку winforms с 3 уровнями, используя ultragrid ultragrid.

Уровень 1 имеет 2 столбца (исправлено)

---> Уровень 2 имеет 3 столбца (исправлено)

--------> Уровень 3 имеет бесконечное количество столбцов (динамическое в зависимости от типа элемента уровня 2)

пример

Уровень 1 Предмет 1 -> 3 столбца (фиксированный)

Уровень 1, предмет 1 -> Уровень 2, предмет 1 -> 3 столбца (фиксированный)

Уровень 1, элемент 1 -> Уровень 2, элемент 1 -> Уровень 3, элемент 1 -> 3 столбца (динамический)

Уровень 1, предмет 1 -> Уровень 2, предмет 2 -> 3 столбца (фиксированный)

Уровень 1, элемент 1 -> Уровень 2, элемент 2 -> Уровень 3, элемент 1 -> 6 столбцов (динамический)

Как этого добиться на сетке, особенно на Ultragrid?

У меня сейчас сильная головная боль

Приветствия

1 Ответ

1 голос
/ 09 июня 2009

UltraGrid использует концепцию «Bands» для хранения иерархических данных. Ваш уровень 1 - это одна группа, ваш уровень 2 - другая.

Вот где это становится сложным: ваш уровень 3 на самом деле состоит из нескольких полос в зависимости от того, сколько у вас динамических типов элементов уровня 2.

Если вы используете DataSet / DataTable в качестве источника данных, каждый DataTable соответствует Band, это просто:

  • 1 DataTable для уровня 1
  • 1 DataTable для уровня 2 (с DataRelation обратно в DataTable 1)
  • N DataTables для уровня 3, каждый с это собственные столбцы, и каждый имеет DataRelation обратно в DataTable 2

НТН.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...