博客园  :: 首页  :: 新随笔  :: 订阅 订阅  :: 管理

vs2005入门视频教程 之 导航概述 [视频]

Posted on 2006-11-04 13:34  天轰穿  阅读(4003)  评论(5编辑  收藏  举报
本节我们开始讲 站点导航,因为这个涉及到几个方面的问题,所以难免会有点烦琐,但是我会尽量少说废话,多做实事.在前面呢我们先把理论上的东西都跑一遍,大家心理有个底,然后我这里已经做好一个例题,我根据这个例题给大家详细的讲一次.

            首先我们说为什么需要站点导航,凡是做过网站,哪怕只作过一个个人主页的朋友都知道,导航实际上是给访问者提供了一个地图类似的东西,让访问者更快捷的找到需要的东西,当然,别做得向MSDN了,哈哈,那么高的耦合可只会让人迷路,事实上确实很多人就令可看残缺的资料也不愿意去看完整的MSDN文档,以前我也是这样的.不过还是忠告大家一句,要想学好这门语言,要想运用好,那么MSDN的文档你不看也得看,除非你是绝对的天才.我看过段时间闲点了做一个我自己在上面找资料的一些心得.

        在2.0中我们引入了一个很重要的概念,那就是站点地图 SiteMap 这样一个XML文件,但是他后缀不是XML,呵呵.
     
下面的东西都是我从MSDN 上面找出来的,我自己总结又总结不出这么全面,所以,嘿嘿...
    
        若要为站点创建一致的、容易管理的导航解决方案,可以使用 ASP.NET 站点导航。ASP.NET 站点导航提供下列功能:
  • 站点地图   您可以使用站点地图描述站点的逻辑结构。接着,可通过在添加或移除页面时修改站点地图(而不是修改所有网页的超链接)来管理页导航。

  • ASP.NET 控件   您可以使用 ASP.NET 控件在网页上显示导航菜单。导航菜单以站点地图为基础。

  • 编程控件   您可以以代码方式使用 ASP.NET 站点导航,以创建自定义导航控件或修改在导航菜单中显示的信息的位置。

  • 访问规则   您可以配置用于在导航菜单中显示或隐藏链接的访问规则。

  • 自定义站点地图提供程序   您可以创建自定义站点地图提供程序,以便使用自己的站点地图后端(如存储链接信息的数据库),并将提供程序插入到 ASP.NET 站点导航系统。

    站点地图加载进程

    默认的 ASP.NET 站点地图提供程序会加载站点地图数据作为 XML 文档,并在应用程序启动时将其作为静态数据进行缓存。超大型站点地图文件在加载时可能要占用大量的内存和 CPU 资源。ASP.NET 站点导航功能根据文件通知来使导航数据保持为最新的。更改站点地图文件时,ASP.NET 会重新加载站点地图数据。

    创建站点地图最简单方法是创建一个名为 Web.sitemap 的 XML 文件,该文件按站点的分层形式组织页面。ASP.NET 的默认站点地图提供程序自动选取此站点地图。

    尽管 Web.sitemap 文件可以引用其他站点地图提供程序或其他目录中的其他站点地图文件以及同一应用程序中的其他站点地图文件,但该文件必须位于应用程序的根目录中。

    有效站点地图文件只包含一个直接位于 siteMap 元素下方的 siteMapNode 元素。但第一级 siteMapNode 元素可以包含任意数量的子 siteMapNode 元素。此外,尽管 url 属性可以为空,但有效站点文件不能有重复的 URL。ASP.NET 默认站点地图提供程序以外的提供程序可能没有这种限制。

    站点导航控件

    创建一个反映站点结构的站点地图只完成了 ASP.NET 站点导航系统的一部分。导航系统的另一部分是在 ASP.NET 网页中显示导航结构,这样用户就可以在站点内轻松地移动。通过使用下列 ASP.NET 站点导航控件,您可以轻松地在页面中建立导航信息:

    • SiteMapPath   此控件显示导航路径(也称为面包屑或眉毛链接)向用户显示当前页面的位置,并以链接的形式显示返回主页的路径。此控件提供了许多可供自定义链接的外观的选项。

    • TreeView    此控件显示一个树状结构或菜单,让用户可以遍历访问站点中的不同页面。单击包含子节点的节点可将其展开或折叠。

    • Menu    此控件显示一个可展开的菜单,让用户可以遍历访问站点中的不同页面。将光标悬停在菜单上时,将展开包含子节点的节点。

    一个简单的导航例题

     

    以编程方式修改内存中的站点地图节点

    配置多个站点地图和站点地图提供程序

    以编程方式枚举站点地图节点

    视频下载    地址一     地址二      地址三