asp.net 2.0中使用sitemapDATAsource做页面导航

发表于:2007-07-01来源:作者:点击数: 标签:
在ASP.NET 2.0中,没有专门的页面导航控件,但可以使用SITEMAPdatasource配和DATALIST来实现。 SITEMAPDATASOURCE控件中,需要特别的建立一个web.sitemap的XML文件,该文件中存贮网站的结构, 比如 ?xml version=1.0 encoding=utf-8 ? siteMap xmlns=http://s
在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>



<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>


就可以实现简单的页面导航的效果了

原文转自:http://www.ltesting.net