Навигация по сайту в ASP.NET 2.0 - Отображение карты сайта при помощи элементов управления навигации

ОГЛАВЛЕНИЕ


Отображение карты сайта при помощи элементов управления навигации

Теперь, когда мы определили карту сайта, мы готовы к выводу данной информации при помощи страницы ASP.NET. Как говорилось выше, существует три встроенных элемента управления навигации: SiteMapPath, TreeView и Menu. Использование данных элементов не представляет большого труда - просто перетащите их на ASP.NET страницу и настройте свойства для того, чтобы настроить соответствующий сценарий диалога с пользователем.

Для того чтобы продемонстрировать это, мы создадим мастер-страницу веб-сайта. Мастер-страницы  облегчают создание  шаблона сайта. Поскольку в общем случае элементы пользовательского интерфейса навигации отображаются на каждой странице, то мастер-страница является идеальным местом хранения данных элементов управления. В частности, моя мастер-страница состоит из таблицы с тремя разделами:

  • Шапка (верхняя часть) - здесь отображается заголовок сайта ("Welcome to my Website!")
  • Левая область - здесь расположен элемент управления TreeView, который отображает все содержимое карты сайта. Это позволит пользователю быстро переместиться в определенную область сайта.
  • Основная область - главная область будет включать уникальное содержимое каждой страницы, использующей мастер-страницу. (Заметьте элемент управления ContentPlaceHolder в главной области.)  В дополнение, элемент SiteMapPath также добавлен в верхнюю часть главной страницы, предоставляя иерархическую навигацию и отображая пользователям, где они находятся на сайте.

Чтобы добавить SiteMapPath на главную страницу, я просто-напросто перетаскиваю и бросаю элемент управления SiteMapPath из Toolbox на мастер-страницу. При добавлении элемента управления TreeView (либо Menu) вам необходимо сначала добавить на страницу элемент управления SiteMapDataSource; далее добавьте TreeView (либо Menu) и установите его свойство DataSourceID в значении ID элемента управления SiteMapDataSource (это может быть осуществлено посредством использования смарт-тэга TreeView). Элемент управления SiteMapDataSource осуществляет запрос по карте сайта, используя API интерфейса навигации, и предоставляет полную структуру карты сайта элементу TreeView (либо Menu).

Следующее изображение показывает веб-сайт, просмотренный в веб-браузере. Заметьте, что слева присутствует элемент управления TreeView, перечисляющий все содержимое карты сайта. Нажатие на любой узел в элементе управления TreeView переносит пользователя к соответствующему разделу. Элемент управления SiteMapPath в верхней части основной области демонстрирует пользователю его текущее положение на сайте (т.е., Home > Books > Novels).