ASP.NET Web Forms - Навигация
В ASP.NET есть встроенные элементы управления навигацией.
Навигация по веб-сайту
Поддержка меню для больших веб-сайтов сложна и отнимает много времени.
В ASP.NET меню можно хранить в файлах, что упрощает их поддержку. Файл обычно называетсяweb.sitemapи размещается в корневом каталоге веб-сайта.
Кроме того, в ASP.NET есть три новых элемента управления навигацией:
- Динамические меню
- Древовидные представления
- Путь карты сайта
Файлы карты сайта
В этом руководстве используется следующий файл карты сайта:
<siteMap>
<siteMapNode title="Home" url="/aspnet/w3home.aspx">
<siteMapNode title="Services" url="/aspnet/w3services.aspx">
<siteMapNode title="Training" url="/aspnet/w3training.aspx"/>
<siteMapNode title="Support" url="/aspnet/w3support.aspx"/>
</siteMapNode>
</siteMapNode>
</siteMap>
Правила создания файла карты сайта:
- XML-файл должен содержать тег <siteMap>, обрамляющий содержимое.
- Тег <siteMap> может иметь только один дочерний узел <siteMapNode> (страница "home").
- Каждый <siteMapNode> может иметь несколько дочерних узлов (веб-страниц).
- Каждый <siteMapNode> имеет атрибуты, определяющие заголовок страницы и URL.
Примечание:Файл карты сайта должен располагаться в корневом каталоге сайта, а атрибуты URL должны быть относительными к этому корневому каталогу.
Динамические меню
Элемент управления <asp:Menu> может отображать стандартное меню навигации по сайту.
Пример кода:
<form runat="server">
<asp:Menu runat="server" DataSourceId="nav1" />
</form>
В приведенном выше примере<asp:Menu>— это элемент управления, служащий заполнителем, с помощью которого сервер создает меню навигации.
Источник данных элемента управления определяется атрибутомDataSourceId.id="nav1"Подключите источник данных к<asp:SiteMapDataSource>элемента управления.
<asp:SiteMapDataSource>Элемент управления автоматически подключается к файлу карты сайта по умолчанию (web.sitemap)。
TreeView
Элемент управления <asp:TreeView> может отображать многоуровневые меню навигации.
Этот тип меню выглядит как дерево с ветвями и листьями, и его можно открывать и закрывать с помощью символов + или -.
Пример кода:
<form runat="server">
<asp:TreeView runat="server" DataSourceId="nav1" />
</form>
В приведенном выше примере<asp:TreeView>элемент управления служит заполнителем, с помощью которого сервер создает меню навигации.
Источник данных элемента управления определяется атрибутомDataSourceId.id="nav1"Подключите источник данных к<asp:SiteMapDataSource>элемента управления.
<asp:SiteMapDataSource>Элемент управления автоматически подключается к файлу карты сайта по умолчанию (web.sitemap)。
SiteMapPath
Элемент управления SiteMapPath может отображать указатель (путь навигации) к текущей странице. Путь отображается в виде кликабельных ссылок, указывающих на родительские страницы.
В отличие от элементов управления TreeView и Menu, элемент управления SiteMapPathне используетSiteMapDataSource. Элемент управления SiteMapPath по умолчанию использует файл web.sitemap.
Совет: если SiteMapPath отображается неправильно, это может быть вызвано ошибками в URL (опечатками) в файле web.sitemap.
Пример кода:
<asp:SiteMapPath runat="server" />
</form>
В приведенном выше примере<asp:SiteMapPath>— это элемент управления, который служит заполнителем, с помощью которого сервер создает меню навигации.
Другие расширения