ASP.NET 2.0 - Navigering (Navigation)
- Föregående sida WebForms Master Page
- Nästa sida WebForms exempel
ASP.NET 2.0 har inbyggda navigationskontroller.
Webbplatsnavigering
Det är svårt och tidskrävande att underhålla navigationsmenyer för stora webbplatser.
I ASP.NET 2.0 kan menyer lagras i filer, vilket gör underhållet mer bekvämt. Denna fil kallas vanligtvis web.sitemapsparas i webbplatsens rotkatalog.
Dessutom har ASP.NET 2.0 tre nya navigationskontroller:
- Dynamiska menyer
- TreeViews
- Site Map Path
Sitemap-fil
Denna handledning använder följande sitemap-fil (site map):
<?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>
Regler för att skapa sitemap-filer:
- XML-filen måste innehålla omgivande <siteMap>-etiketter
- Etiketten <siteMap> kan bara ha en <siteMapNode>-undernod ("hem"-sida)
- Varje <siteMapNode> kan ha flera undernoder (webbsidor)
- Varje <siteMapNode> har egenskaper för att definiera sidtitel och URL
Kommentar:sitemap-filen måste lagras i webbplatsens rotkatalog, URL-egenskapen måste vara relativ till denna rotkatalog.
Dynamisk meny
<asp:Menu>-kontrollen kan visa en standardplatsnavigationsmeny.
Kodexempel:
<asp:SiteMapDataSource id="nav1" runat="server" /> <form runat="server"> <asp:Menu runat="server" DataSourceId="nav1" /> </form>
I ovanstående exempel <asp:Menu> 控件Det är en placeholder för att skapa en navigationsmeny på servern.
Kontrollens datakälla är DataSourceId-attributför att definiera.id="nav1" Anslut till 控件 <asp:SiteMapDataSource>.
控件 <asp:SiteMapDataSource>ansluter automatiskt till den förinställda sitemap-filen (web.sitemap)
TreeView
控件 <asp:TreeView> kan visa en flergradig navigationsmeny.
Denna meny ser ut som ett träd med grenar och kan öppnas eller stängas med + eller - tecken.
Kodexempel:
<asp:SiteMapDataSource id="nav1" runat="server" /> <form runat="server"> <asp:TreeView runat="server" DataSourceId="nav1" /> </form>
I föregående exempel 控件 <asp:TreeView>Det är en placeholder för att skapa en navigationsmeny på servern.
Kontrollens datakälla är DataSourceId-attributför att definiera.id="nav1" Anslut till 控件 <asp:SiteMapDataSource>.
控件 <asp:SiteMapDataSource>ansluter automatiskt till den förinställda sitemap-filen (web.sitemap)
SiteMapPath
SiteMapPath-kontrollen kan visa en pekpinnare till den aktuella sidan (navigationsväg). Denna väg visas som en klickbar länk till övre sidan.
Skillnad från TreeView och Menu-kontroller, SiteMapPath-kontrollenAnvänd inte SiteMapDataSource. SiteMapPath-kontrollen använder som standard web.sitemap-filen.
Tips:Om SiteMapPath inte visas korrekt är det troligtvis på grund av URL-fel i web.sitemap-filen.
Kodexempel:
<form runat="server"> <asp:SiteMapPath runat="server" /> </form>
I föregående exempel 控件 <asp:SiteMapPath>Det är en placeholder för att skapa en navigationsmeny på servern.
- Föregående sida WebForms Master Page
- Nästa sida WebForms exempel