Вопрос

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

Уровень 1 имеет 2 столбца (фиксированный)

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

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

пример

Элемент 1 уровня 1 -> 3 Столбца (исправлено)

Элемент 1 уровня 1 -> Элемент 1 уровня 2 -> 3 Столбца (исправлено)

Элемент 1 уровня 1 -> Элемент 1 уровня 2 -> Элемент 1 уровня 3 -> 3 столбца (динамический)

Элемент 1 уровня 1 -> Элемент 2 уровня 2 -> 3 Столбца (исправлено)

Элемент 1 уровня 1 -> Элемент 2 уровня 2 -> Элемент 1 уровня 3 -> 6 Столбцов (динамический)

Как этого можно достичь в сетке, в частности в Ultragrid?

Прямо сейчас у меня сильно болит голова

Ваше здоровье

Это было полезно?

Решение

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

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

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

  • 1 Доступные данные для уровня 1
  • 1 DataTable для уровня 2 (с привязкой данных обратно к DataTable 1)
  • N таблиц данных для уровня 3, каждая с собственными столбцами, и каждая из них имеет Ссылку данных обратно на DataTable 2

ХТХ.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top