ASP.NET ma wbudowane opcje nawigacyjne
Web Site Navigation
Utrzymanie menu dużej witryny internetowej jest trudne i czasochłonne.
W ASP.NET menu mogą być przechowywane w pliku, aby łatwiej utrzymać. Ten plik udostępniony jest zwykle nazywany web.sitemap i jest przechowywany w katalogu głównym sieci.
Ponadto, ASP.NET ma trzy nowe elementy sterujące nawigacji:
- dynamiczne menu
- treeviews
- Mapa strony Path
Sitemap pliku
Następujący plik mapy witryny jest wykorzystywany w tym poradniku:
<?xml version="1.0" encoding="ISO-8859-1" ?>
<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>
Zasady tworzenia pliku Sitemap:
- Plik XML musi zawierać <siteMap> tag otaczającą zawartość
- <siteMap> tag może mieć tylko jedno <siteMapNode> węzeł podrzędny (the "home" page)
- Każdy <siteMapNode> może mieć kilka węzłów potomnych (web pages)
- Każdy <siteMapNode> ma atrybuty definiujące tytuł strony i adres URL
Note: W pliku mapy witryny musi być umieszczony w katalogu głównym sieci i URL atrybuty muszą być w stosunku do katalogu głównego.
dynamiczny Menu
<asp:Menu> wyświetlacze kontroli standardowego menu nawigacji w witrynie.
Code Example:
<asp:SiteMapDataSource id="nav1" runat="server" />
<form runat="server">
<asp:Menu runat="server" DataSourceId="nav1" />
</form>
<asp:Menu> Kontrola w powyższym przykładzie jest symbolem zastępczym dla serwera tworzone menu nawigacyjnym.
Źródłem danych z kontroli jest określona przez DataSourceId atrybutu. id="nav1" łączy go do <asp:SiteMapDataSource> kontrolą.
<asp:SiteMapDataSource> kontrola automatycznie połączy się z domyślnym plikiem sitemap ( web.sitemap ) .
Kliknij tutaj, aby zobaczyć prezentację menu, TreeView i SiteMapPath
TreeView
<asp:TreeView> wyświetlacze kontrolne menu nawigacyjnego wielopoziomowy.
Menu wygląda jak drzewo z gałęziami, które mogą być otwierane lub zamykane z + lub - symbolem.
Code Example:
<asp:SiteMapDataSource id="nav1" runat="server" />
<form runat="server">
<asp:TreeView runat="server" DataSourceId="nav1" />
</form>
<asp:TreeView> Kontrola w powyższym przykładzie jest symbolem zastępczym dla serwera tworzone menu nawigacyjnym.
Źródłem danych z kontroli jest określona przez DataSourceId atrybutu. id="nav1" łączy go do <asp:SiteMapDataSource> kontrolą.
<asp:SiteMapDataSource> kontrola automatycznie połączy się z domyślnym plikiem sitemap ( web.sitemap ) .
Kliknij tutaj, aby zobaczyć prezentację menu, TreeView i SiteMapPath
SiteMapPath
Kontrola SiteMapPath wyświetla szlaku (navigation path) do aktualnej strony. Ścieżka działa jako klikalne odnośniki do poprzednich stronach.
W przeciwieństwie do kontroli TreeView i menu sterowania SiteMapPath ma NOT używać SiteMapDataSource. Kontrola SiteMapPath używa pliku web.sitemap domyślnie.
Wskazówki: Jeśli SiteMapPath wyświetlany nieprawidłowo, najprawdopodobniej jest błąd URL (typo) w pliku web.sitemap.
Code Example:
<form runat="server">
<asp:SiteMapPath runat="server" />
</form>
<asp:SiteMapPath> Kontrola w powyższym przykładzie jest symbolem zastępczym dla wyświetlacza ścieżki stronie serwera tworzone.
Kliknij tutaj, aby zobaczyć prezentację menu, TreeView i SiteMapPath