ASP.NET 2.0站点导航功能之建立导航
px" title="Books"> <siteMapNode url="~/Books/Novels.aspx" title="Novels" /> <siteMapNode url="~/Books/History.aspx" title="History" /> <siteMapNode url="~/Books/Romance.aspx" title="Romance" /> </siteMapNode> <siteMapNode url="~/Electronics/default.aspx" title="Electronics" /> <siteMapNode url="~/DVDs/default.aspx" title="DVDs" /> <siteMapNode url="~/Computers/default.aspx" title="Computers" /> </siteMapNode> </siteMap> 五、使用导航Web控件显示站点地图 现在,既然我们已经定义了一个站点地图,下面我们将要通过一个ASP.NET页 面来显示该站点地图的数据。如前面所提的,共有三个内置的导航Web控件- SiteMapPath,TreeView和Menu。使用这些控制是简单的-只需把它们拖动到该 ASP.NET页面并且设置属性以调整控件的外观以适合你的站点的外观需要。 为此,我们将为该网站创建一个主页面。正如在《A Sneak Peak at Master Pages in ASP.NET 2.0》中所讨论的,主页面一般提供一个容易的方法来定义整 个站点范围的模板。既然导航用户接口元素普遍出现在一个站点的每个页面上, 那么主页面常常就是一个来放置校验Web控件的理想位置。具体地说,我的主页 面包含一个有下面三部分的表格: 1. 一个表头-这里显示站点的标题("欢迎来到我的网站!") 2. 一个左边部分-这里是一个控件TreeView-它负责列出站点地图的完整内容 。这允许参观者快速跳转到站点的特定部分。 3. 一个主部分-这一部分包含相对于每个页面的唯一的内容-它们共同构成整 个主页面(注意,在这一部分中的ContentPlaceHolder控件)。另外,在这一部分 的顶部还包括了一个控件SiteMapPath-它用于向用户提供一个breadcrumb,来向 他们指示其当前位于站点结构的具体位置。 为把SiteMapPath控件添加到主部分上,我简单地从工具箱拖放SiteMapPath 控件到主页面上。当添加一个TreeView控件(或菜单)时,首先你需要添加一 SiteMapDataSource控件到该页面;然后,添加TreeView(或菜单)并且设置它的 DataSourceID属性为SiteMapDataSource控件的ID(这可以使用TreeView控件的灵 敏标签来实现)。SiteMapDataSource控件实现通过站点导航API查询站点地图并 且把完整的站点地图结构提供给TreeView(或菜单)控件。 下列屏幕快照显示当通过一个浏览器来访问时的该网站。注意,左边的 TreeView控件列出站点地图的完整内容。点击TreeView控件中的任何一个结点将 快速地把用户引导到适当的部分。顶部的SiteMapPath控件向用户指示他们在该 站点层次的位置(也即,Home>Books>Novels)。 六、结论 本文是探讨ASP.NET 2.0的站点导航功能系列文章的第一篇。在这一篇文章中 ,我们分析了站点导航的基础,它包含两步:使用一个站点地图来定义站点的结 构和通过使用导航控件来实现站点地图。幸好,ASP.NET 2.0使得所有这些处理 甚是简单。 在我们分析了站点地图基础的同时,我们还探讨了一些更高级的功能。例如 ,通过使用ASP.NET 2.0的角色特征,你可以限制该站点的某些部分,这样显示 在导航控件中的部分就依赖于访问用户的角色和为该站点地图文件中的这一部分 所定义的角色。另外,该站点地图还包括支持地方化和属性-这样可以很容易地 实现让你的站点中的每一页的标题和描述轻易地支持每种语言。所有这些以及分 析怎样创建一个定制的站点导航提供者,都是我们在后面的文章中所要讨论的。 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |