在ASP.Net 2.0中,沒有專門的頁面導航控件,但可以使用SITEMAPdatasource配和DATALIST來實現。
SITEMAPDATASOURCE控件中,需要特別的建立一個web.sitemap的XML文件,該文件中存貯網站的結構,
比如
<?XML version="1.0" encoding="utf-8" ?>
<siteMap XMLns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
<siteMapNode url="default.ASPx?id=-1" title="首頁">
<siteMapNode url="default2.ASPx?id=0" title="商品"/>
<siteMapNode url="default3.ASPx?id=1" title="社區"/>
</siteMapNode>
</siteMap>
之後,在default.ASPx中,寫入代碼:
<%@ Page Language="C#" %>
<script runat=server>
protected void Page_Load()
{
int index = -1;
Int32.TryParse(Request.QueryString["id"], out index);
Tabs.SelectedIndex = index;
}
</script>
<Html XMLns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>Untitled Page</title>
<style>
a
{
color: #000000;
text-decoration: none;
}
.myTab
{
background: #6666ff;
padding: 4px;
}
.myTabSelected
{
background: #ff00ff;
padding: 4px;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<div>
&nb
sp;
<table>
<ASP:DataList RepeatDirection=Horizontal ID="Tabs" runat="server" DataSourceID="SiteMapDataSource1">
<ItemTemplate>
<td width="4" height="20" valign="top" nowrap class="myTab">
<a href='<%# Eval("Url") %>'><%# Eval("Title") %></a>
</td>
</ItemTemplate>
<SelectedItemTemplate>
<td width="4" height="20" valign="top" nowrap class="myTabSelected">
<a href='<%# Eval("Url") %>'><%# Eval("Title") %></a>
</td>
</SelectedItemTemplate>
</ASP:DataList>
</table>
<ASP:SiteMapDataSource ShowStartingNode=false ID="SiteMapDataSource1" runat="server" />
</div>
</form>
</body>
</Html>
就可以實現簡單的頁面導航的效果了