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

80酷酷网    80kuku.com

  asp.net|sitemap|页面在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>


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

分享到
  • 微信分享
  • 新浪微博
  • QQ好友
  • QQ空间
点击: