Древовидные, иерархические структуры могут быть описаны различными способами. Выбор способа описания зависит от множества факторов:
Существует несколько способов отображения иерархических структур.
В первую очередь это классический TreeView. Элемент управления, используемый в VB неполноценен и для реализации некоторых функций приходиться пользоваться нестандартными приёмами.
Альтернативой ему могут служить различные Grid'ы в которых реализована возможность отображения иерархий. Это vsFlexGrid и некоторые другие. Важным преимуществом таких решений является возможность отображения данных с разбивкой на колонки.
Для навигации в иерархических структурах можно обойтись и без деревьев. Хорошим примером этому может служить стандартное диалоговое окно открыть \ сохранить обеспечивающее доступ к файловой системе.
Для отображения иерархий могут служить и элементы управления изначально для этого не предназначенные. Например, есть примеры использования списков. Еще более интересен пример, в котором TreeView реализован на основе PictureBox.
Но наиболее эффектные решения могут быть получены с использованием WebBrowser.
Тут представлены два моих VB проекта, демонстрирующих различные подходы к иерархическим структурам.
TreeViewDemo | |
В этой программе используется связанный список, хранимый в БД Access и элемент управления TreeView. Каждый узел содержит:
Благодаря этой схеме любая операция с элементом требует модификации максимум трёх узлов. В программе реализованы следующие функции:
| |
Скачать исходник. |
OutlineDemo | |
Этот пример - результат перевода кода ASP проекта в VB. В примере три ключевые особенности
| |
Скачать исходник. |